IHttpClientBuilder 接口

定义

用于配置 IHttpClientFactory 返回的已命名 HttpClient 实例的生成器。

public interface class IHttpClientBuilder
public interface IHttpClientBuilder
type IHttpClientBuilder = interface
Public Interface IHttpClientBuilder

属性

Name

获取此生成器所配置的客户端名称。

Services

获取应用程序服务集合。

扩展方法

AddDefaultLogger(IHttpClientBuilder)

如果之前通过调用 RemoveAllLoggers(IHttpClientBuilder)删除了名为 HttpClient的默认日志记录,请重新添加该默认日志记录。

AddHttpMessageHandler(IHttpClientBuilder, Func<IServiceProvider,DelegatingHandler>)

添加一个委托,该委托将用于为已命名的 HttpClient 创建附加消息处理程序。

AddHttpMessageHandler(IHttpClientBuilder, Func<DelegatingHandler>)

添加一个委托,该委托将用于为已命名的 HttpClient 创建附加消息处理程序。

AddHttpMessageHandler<THandler>(IHttpClientBuilder)

从已命名的 HttpClient 的依赖关系注入容器中添加附加消息处理程序。

AddLogger(IHttpClientBuilder, Func<IServiceProvider,IHttpClientLogger>, Boolean)

添加一个委托,该委托将用于为名为 HttpClient的 创建附加记录器。 自定义记录器将从专用日志记录 DelegatingHandler 中针对相应的名为 HttpClient的每个请求调用。

AddLogger<TLogger>(IHttpClientBuilder, Boolean)

添加一个委托,该委托将用于为名为 HttpClient的 创建附加记录器。 自定义记录器将从专用日志记录 DelegatingHandler 中针对相应的名为 HttpClient的每个请求调用。

AddTypedClient<TClient>(IHttpClientBuilder)

配置 TClient 类型与已命名的 HttpClient(与 IHttpClientBuilder 关联)之间的绑定。

AddTypedClient<TClient>(IHttpClientBuilder, Func<HttpClient,TClient>)

配置 TClient 类型与已命名的 HttpClient(与 IHttpClientBuilder 关联)之间的绑定。

AddTypedClient<TClient>(IHttpClientBuilder, Func<HttpClient,IServiceProvider,TClient>)

配置 TClient 类型与已命名的 HttpClient(与 IHttpClientBuilder 关联)之间的绑定。

AddTypedClient<TClient,TImplementation>(IHttpClientBuilder)

配置 TClient 类型与已命名的 HttpClient(与 IHttpClientBuilder 关联)之间的绑定。 创建的实例的类型为 TImplementation

ConfigureAdditionalHttpMessageHandlers(IHttpClientBuilder, Action<IList<DelegatingHandler>,IServiceProvider>)

添加一个委托,该委托将用于为命名 HttpClient的 使用 HttpMessageHandlerBuilder 配置其他消息处理程序。

ConfigureHttpClient(IHttpClientBuilder, Action<IServiceProvider,HttpClient>)

添加用于配置已命名的 HttpClient 的委托。

ConfigureHttpClient(IHttpClientBuilder, Action<HttpClient>)

添加用于配置已命名的 HttpClient 的委托。

ConfigureHttpMessageHandlerBuilder(IHttpClientBuilder, Action<HttpMessageHandlerBuilder>)
已过时.

添加一个委托,该委托将用于使用 HttpMessageHandlerBuilder 为已命名的 HttpClient 配置消息处理程序。

ConfigurePrimaryHttpMessageHandler(IHttpClientBuilder, Action<HttpMessageHandler,IServiceProvider>)

添加一个委托,该委托将为已命名的 HttpClient 配置主要 HttpMessageHandler

ConfigurePrimaryHttpMessageHandler(IHttpClientBuilder, Func<IServiceProvider,HttpMessageHandler>)

添加一个委托,该委托将为已命名的 HttpClient 配置主要 HttpMessageHandler

ConfigurePrimaryHttpMessageHandler(IHttpClientBuilder, Func<HttpMessageHandler>)

添加一个委托,该委托将为已命名的 HttpClient 配置主要 HttpMessageHandler

ConfigurePrimaryHttpMessageHandler<THandler>(IHttpClientBuilder)

从已命名的 HttpClient 的依赖关系注入容器中配置主要 HttpMessageHandler

RedactLoggedHeaders(IHttpClientBuilder, IEnumerable<String>)

设置其值应在记录之前进行修正的 HTTP 标头名称的集合。

RedactLoggedHeaders(IHttpClientBuilder, Func<String,Boolean>)

设置用于确定是否在记录之前修正 HTTP 标头值的 Func<T,TResult>

RemoveAllLoggers(IHttpClientBuilder)

删除已命名 HttpClient的所有以前添加的记录器,包括默认记录器。

SetHandlerLifetime(IHttpClientBuilder, TimeSpan)

设置可重复使用 HttpMessageHandler 实例的时长。 每个已命名的客户端都可自行配置处理程序生存期值。 默认值为 2 分钟。 将生存期设置为 InfiniteTimeSpan 可禁用处理程序到期。

UseSocketsHttpHandler(IHttpClientBuilder, Action<ISocketsHttpHandlerBuilder>)

添加或更新 SocketsHttpHandler 为命名 HttpClient 的 的主要处理程序,并使用 ISocketsHttpHandlerBuilder对其进行配置。

UseSocketsHttpHandler(IHttpClientBuilder, Action<SocketsHttpHandler,IServiceProvider>)

添加或更新 SocketsHttpHandler 为名为 HttpClient的主处理程序。 如果提供,还会添加将用于配置主 SocketsHttpHandler的委托。

AddExtendedHttpClientLogging(IHttpClientBuilder)

添加 , IHttpClientAsyncLogger 以便为名为 HttpClient的 发出传出请求的日志。

AddExtendedHttpClientLogging(IHttpClientBuilder, IConfigurationSection)

添加 , IHttpClientAsyncLogger 以便为名为 HttpClient的 发出传出请求的日志。

AddExtendedHttpClientLogging(IHttpClientBuilder, Action<LoggingOptions>)

添加 , IHttpClientAsyncLogger 以便为名为 HttpClient的 发出传出请求的日志。

AddPolicyHandler(IHttpClientBuilder, IAsyncPolicy<HttpResponseMessage>)

添加 PolicyHttpMessageHandler,它将使用提供的 IAsyncPolicy`1 将请求执行涵盖在内。

AddPolicyHandler(IHttpClientBuilder, Func<IServiceProvider,HttpRequestMessage,IAsyncPolicy<HttpResponseMessage>>)

添加 PolicyHttpMessageHandler,它将使用 policySelector 返回的策略将请求执行涵盖在内。

AddPolicyHandler(IHttpClientBuilder, Func<IServiceProvider,HttpRequestMessage, String,IAsyncPolicy<HttpResponseMessage>>, Func<HttpRequestMessage, String>)

添加一个 , PolicyHttpMessageHandler 它将使用通过执行提供的键选择逻辑 keySelectorpolicyFactory返回的策略来包围请求执行。

AddPolicyHandler(IHttpClientBuilder, Func<HttpRequestMessage,IAsyncPolicy<HttpResponseMessage>>)

添加 PolicyHttpMessageHandler,它将使用 policySelector 返回的策略将请求执行涵盖在内。

AddPolicyHandlerFromRegistry(IHttpClientBuilder, Func<IReadOnlyPolicyRegistry<String>,HttpRequestMessage,IAsyncPolicy<HttpResponseMessage>>)

添加 PolicyHttpMessageHandler,它将使用 IReadOnlyPolicyRegistry<TKey> 返回的策略将请求执行涵盖在内。

AddPolicyHandlerFromRegistry(IHttpClientBuilder, String)

添加 PolicyHttpMessageHandler,它将使用 IReadOnlyPolicyRegistry<TKey> 返回的策略将请求执行涵盖在内。

AddTransientHttpErrorPolicy(IHttpClientBuilder, Func<PolicyBuilder<HttpResponseMessage>,IAsyncPolicy<HttpResponseMessage>>)

添加 PolicyHttpMessageHandler,它将使用通过执行提供的配置委托创建的 Policy 将请求执行涵盖在内。 策略生成器将预先配置为针对失败的请求(带有指示暂时性故障的条件)的策略的触发器应用程序。

AddResilienceHandler(IHttpClientBuilder, String, Action<ResiliencePipelineBuilder<HttpResponseMessage>,ResilienceHandlerContext>)

添加使用命名内联复原管道的复原管道处理程序。

AddResilienceHandler(IHttpClientBuilder, String, Action<ResiliencePipelineBuilder<HttpResponseMessage>>)

添加使用命名内联复原管道的复原管道处理程序。

AddStandardHedgingHandler(IHttpClientBuilder)

添加一个标准对冲处理程序,该处理程序使用标准对冲机制包装请求的执行。

AddStandardHedgingHandler(IHttpClientBuilder, Action<IRoutingStrategyBuilder>)

添加一个标准对冲处理程序,该处理程序使用标准对冲机制包装请求的执行。

AddStandardResilienceHandler(IHttpClientBuilder)

添加标准复原处理程序,该处理程序使用具有默认选项的多种复原策略来发送请求并处理任何暂时性错误。

AddStandardResilienceHandler(IHttpClientBuilder, IConfigurationSection)

添加标准复原处理程序,该处理程序使用具有默认选项的多种复原策略来发送请求并处理任何暂时性错误。

AddStandardResilienceHandler(IHttpClientBuilder, Action<HttpStandardResilienceOptions>)

添加标准复原处理程序,该处理程序使用具有默认选项的多种复原策略来发送请求并处理任何暂时性错误。

适用于