我是实现 HttpClientFactory 的新手。我读过一份有关实现方法的文档。 在我的代码中有服务及其接口(interface),所以我想使用类型化客户端。但我有一个问题?!在类型化客户端中,我们不直接使用HttpClientFactory那么HttpClientFactory的好处在哪里? 这是我注册服务的代码:
var clientConf = configuration.GetSection(nameof(ClientConfigs));
builder.Services.AddHttpClient<IClientService, ClientService>(c =>
{
c.BaseAddress = new Uri(clientConf.GetSection("EndPoint").Value);
}).AddHttpMessageHandler<ServiceCallRequestHeader>();
这是我的服务的负责人:
public ClientService(HttpClient client, ILogger<ClientService> logger)
{
_client = client;
_logger = logger;
}
最佳答案
在 Typed-Client 中,Dotnet 使用 HttpClientFactory 创建 HttpClient
的实例,使用该实例他们将创建您的客户端/类实例。所以最后,即使您没有显式使用 HttpClientFactory
,您也在使用它。
下面是执行此操作的内部代码 来源:HttpClientBuilderExtensions.cs
关于c# - HttpClientFactory 和类型化客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73433886/