Свойство InnerHandler должно иметь значение null. Экземпляры DelegatingHandler, предоставленные HttpMessageHandlerBuildeC#

Место общения программистов C#
Ответить
Anonymous
 Свойство InnerHandler должно иметь значение null. Экземпляры DelegatingHandler, предоставленные HttpMessageHandlerBuilde

Сообщение Anonymous »

У меня есть собственный обработчик сообщений в приложении MAUI Blazor для обработки запросов API, таких как загрузка счетчика, определение заголовка запроса и проверка исключений API

Код: Выделить всё

public class CustomHttpRequestHandler : DelegatingHandler
{

}
и есть еще один httpclientHandler для обработки закрепления SSL

Код: Выделить всё

public class HttpsValidation : HttpClientHandler
{
public HttpsValidation()
{
AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate | DecompressionMethods.Brotli;
UseProxy = true;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

ServerCertificateCustomValidationCallback = OnValidateCertificate;
}
}
назначение двух обработчиков в DI следующим образом

Код: Выделить всё

builder.Services.AddHttpClient(
"MyhttpClient",
client => client.BaseAddress = new Uri(BaseUrl)
).ConfigureHttpMessageHandlerBuilder(builder => builder.PrimaryHandler = new HttpClientHandler()
{
UseDefaultCredentials = true
}
).ConfigurePrimaryHttpMessageHandler(() => new HttpsValidation())
.AddHttpMessageHandler();
определение http-клиента в RestService следующим образом

Код: Выделить всё

  _httpClient = _thttpClientFactory.CreateClient("MyhttpClient");
Действительно, приложение работает нормально, но иногда эта проблема возникает внезапно, даже иногда, когда приложение какое-то время бездействует, я получаю следующую ошибку:
blazor.webview.js:1 Свойство InnerHandler должно иметь значение null. Экземпляры «DelegatingHandler», предоставленные «HttpMessageHandlerBuilder», не должны повторно использоваться или кэшироваться.
Обработчик: «CustomHttpRequestHandler»
Ожидал, что приложение будет работать нормально и без каких-либо проблем< /п>

Подробнее здесь: https://stackoverflow.com/questions/775 ... s-provided
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»