6.51配置 IHttpClientBuilder
创建于 2026 年 8 月 17 日约 1 分钟读完
.AddHttpClient(name, configure) 方法返回一个 IHttpClientBuilder 实例,允许进行进一步的配置,比如设置 HttpMessageHandler。
配置默认和特定客户端的示例
// 配置默认客户端services.AddHttpClient(string.Empty, client => {}) .ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler { // 允许自动重定向 AllowAutoRedirect = true, // 使用默认凭据 UseDefaultCredentials = true, // 启用 Cookie UseCookies = true, });// 配置名为 "weixin" 的特定客户端services.AddHttpClient("weixin", client => {}) .ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler());统一配置所有 HttpClient 实例
除了单独配置每个客户端,您还可以统一配置所有 HttpClient 实例:
services.ConfigureHttpClientDefaults(clientBuilder =>{ clientBuilder.ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler());});// 或使用 IHttpRemoteBuilder 扩展方法进行一键配置services.AddHttpRemote() .ConfigureHttpClientDefaults(clientBuilder => { clientBuilder.ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler()); });这样的配置方式使代码更加简洁和模块化,便于维护和管理。