在使用.NET Core的HttpClientFactory
时,是否有可能以某种方式删除默认的LoggingHttpMessageHandler
?
我期望类似于以下内容,但似乎并不存在
services.AddHttpClient("minos")
.RemoveHttpMessageHandler<LoggingHttpMessageHandler>();
在使用.NET Core的HttpClientFactory
时,是否有可能以某种方式删除默认的LoggingHttpMessageHandler
?
我期望类似于以下内容,但似乎并不存在
services.AddHttpClient("minos")
.RemoveHttpMessageHandler<LoggingHttpMessageHandler>();
只是为了需要这个的任何人,我在GitHub仓库上提出了一个问题,其中一位贡献者回复了以下内容
services.RemoveAll<IHttpMessageHandlerBuilderFilter>();
https://github.com/aspnet/HttpClientFactory/issues/196#issuecomment-432755765
您可以通过将HttpClient的日志级别设置为none在appsettings.json中配置它:
然而,这也会启用来自System根命名空间中所有其他组件的信息消息。因此,最好通过限制配置“System.Net.Http.HttpClient”来配置日志记录,这样您只会添加通过HttpClientFactory创建的客户端发出的HTTP请求的消息:
{
"Logging": {
"LogLevel": {
"Default": "Warning",
"System.Net.Http.HttpClient": "Information"
}
}
}
https://www.stevejgordon.co.uk/httpclientfactory-asp-net-core-logging