my программа.
Код: Выделить всё
builder.Services.AddHttpClient("api-client", o =>
{
o.BaseAddress = new("https+http://myapi");
}).AddHttpMessageHandler().AddStandardResilienceHandler(o =>
{
o.CircuitBreaker.SamplingDuration = TimeSpan.FromSeconds(240);
o.TotalRequestTimeout.Timeout = TimeSpan.FromSeconds(240);
o.AttemptTimeout.Timeout = TimeSpan.FromSeconds(120);
o.Retry.MaxDelay = TimeSpan.FromSeconds(120);
});
< /code>
Я также попробовал это: < /p>
builder.Services.AddHttpClient("api-client", o =>
{
o.BaseAddress = new("https+http://myapi");
}).AddHttpMessageHandler().AddStandardResilienceHandler().Configure(o =>
{
o.CircuitBreaker.SamplingDuration = TimeSpan.FromSeconds(240);
o.TotalRequestTimeout.Timeout = TimeSpan.FromSeconds(240);
o.AttemptTimeout.Timeout = TimeSpan.FromSeconds(120);
o.Retry.MaxDelay = TimeSpan.FromSeconds(120);
});
update
Если я удалю обработчик сообщений HTTP от клиентского строителя, политика повторного периода работает.
Подробнее здесь: https://stackoverflow.com/questions/797 ... factory-wh