因此,我在 Startup.cs 中注册了一个具名客户端和服务集合:
services.AddHttpClient(someServiceName,
client => client.BaseAddress = baseAddress);
现在可以从我的服务提供商注入 IHttpClientFactory
。
使用这个 IHttpClientFactory
,我想象出一个客户端实例:
var client = httpClientFactory.CreateClient(someServiceName)
很久以前,有必要非常小心地处理 HttpClient
实例,因为它是 很少做正确的事。
但是,现在我们有了 HttpClientFactory
,这还重要吗? 这个 client
应该/可以放心处理吗? 例如。
using (var httpClient = httpClientFactory.CreateClient(someServiceName))
using (var response = await httpClient.PostAsync(somePath, someData))
{
var content = await response.Content.ReadAsAsync<SomeResponse>();
//...
}