chore(moysklad): базовый URL MoySklad — из конфигурации (MoySklad:BaseUrl)
MoySkladClient.BaseUrl был константой api.moysklad.ru, из-за чего импорт нельзя было протестировать без боевого токена. Регистрация HttpClient теперь берёт BaseAddress из MoySklad:BaseUrl (дефолт — прежний боевой URL), так что e2e/интеграционные тесты наводят клиент на mock-сервер, не трогая прод. MoySkladClient не меняем — он уже делает BaseAddress ??= const. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
50ae8bd18b
commit
e78e921dd2
|
|
@ -157,7 +157,15 @@
|
|||
builder.Services.AddSwaggerGen();
|
||||
|
||||
// MoySklad import integration. Auto-decompress gzip responses from MoySklad's edge.
|
||||
builder.Services.AddHttpClient<foodmarket.Infrastructure.Integrations.MoySklad.MoySkladClient>()
|
||||
// BaseAddress берётся из конфигурации (MoySklad:BaseUrl) с дефолтом на боевой
|
||||
// api.moysklad.ru — так интеграцию можно навести на mock-сервер в e2e/интеграционных
|
||||
// тестах, не трогая прод. Трейлинг-слэш обязателен (RFC 3986 §5.3, см. MoySkladClient).
|
||||
builder.Services.AddHttpClient<foodmarket.Infrastructure.Integrations.MoySklad.MoySkladClient>(http =>
|
||||
{
|
||||
var baseUrl = builder.Configuration["MoySklad:BaseUrl"];
|
||||
if (!string.IsNullOrWhiteSpace(baseUrl))
|
||||
http.BaseAddress = new Uri(baseUrl);
|
||||
})
|
||||
.ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler
|
||||
{
|
||||
AutomaticDecompression = System.Net.DecompressionMethods.GZip | System.Net.DecompressionMethods.Deflate,
|
||||
|
|
|
|||
Loading…
Reference in a new issue