每次需要自定义 HttpClientHandler 时重用 HttpClient

os *_*lue 5 .net c# asp.net httpclient

根据最佳实践,您应该实例化 HttpClient 的单个实例并在整个应用程序生命周期中重用它。

但是,当您需要为每个请求注入自定义 HttpClientHandler 时,该怎么做呢?(即我需要根据呼叫者加载自定义证书)

    var clientHandler = new HttpClientHandler();
    clientHandler.ClientCertificates.Add(customCertificate);

    using (var httpClient = new HttpClient(clientHandler))
    {
        // Call another endpoint
    }
Run Code Online (Sandbox Code Playgroud)

为每个用例创建 HttpClient 的多个单例实例有什么好处吗?