【问题标题】:What is the purpose of the HttpClientFactory (System.Net.Http.Formatting)?HttpClientFactory(System.Net.Http.Formatting)的目的是什么?
【发布时间】:2020-02-23 13:55:01
【问题描述】:

网上有很多关于HttpClientIHttpClientFactory、DI、socket耗尽问题等的说法

谁能向我解释为什么需要HttpClientFactory class(来自System.Net.Http.Formatting 程序集)及其方法。

【问题讨论】:

标签: c# .net .net-core httpclient httpclientfactory


【解决方案1】:

System.Net.Http.HttpClientFactory,与Microsoft.AspNet.WebApi.Client NuGet package 一起提供,只是一个帮助创建一个带有多个HttpDelegatingHandler 对象管道的HttpMessageHandler。它的Create 方法literally does this

public static HttpClient Create(HttpMessageHandler innerHandler, params DelegatingHandler[] handlers)
{
    HttpMessageHandler pipeline = CreatePipeline(innerHandler, handlers);
    return new HttpClient(pipeline);
}

CreatePipeline 设置了一个HttpMessageHandler,它将所有传递的处理程序包装到一个管道中,以便它们按顺序执行。

这个HttpClientFactory 与作为Microsoft.Extensions.Http package 一部分的较新的IHttpClientFactory 几乎没有关系。这就是所有“嗡嗡声”的内容,以及您将来应该如何理想地创建 HTTP 客户端。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-05
    • 2015-03-21
    • 1970-01-01
    • 1970-01-01
    • 2019-07-14
    • 1970-01-01
    • 1970-01-01
    • 2018-11-04
    相关资源
    最近更新 更多