HttpClientHandler 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
.NET Framework 中使用的 HttpClient 默认消息处理程序。
public ref class HttpClientHandler : System::Net::Http::HttpMessageHandler
public class HttpClientHandler : System.Net.Http.HttpMessageHandler
type HttpClientHandler = class
inherit HttpMessageHandler
Public Class HttpClientHandler
Inherits HttpMessageHandler
- 继承
- 派生
示例
static async Task Main()
{
// Create an HttpClientHandler object and set to use default credentials
HttpClientHandler handler = new HttpClientHandler();
handler.UseDefaultCredentials = true;
// Create an HttpClient object
HttpClient client = new HttpClient(handler);
// Call asynchronous network methods in a try/catch block to handle exceptions
try
{
HttpResponseMessage response = await client.GetAsync("http://www.contoso.com/");
response.EnsureSuccessStatusCode();
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody);
}
catch(HttpRequestException e)
{
Console.WriteLine("\nException Caught!");
Console.WriteLine("Message :{0} ",e.Message);
}
// Need to call dispose on the HttpClient and HttpClientHandler objects
// when done using them, so the app doesn't leak resources
handler.Dispose();
client.Dispose();
}
注解
有关此 API 的详细信息,请参阅 HttpClientHandler 的补充 API 备注。
构造函数
| 名称 | 说明 |
|---|---|
| HttpClientHandler() |
创建类的 HttpClientHandler 实例。 |
属性
| 名称 | 说明 |
|---|---|
| AllowAutoRedirect |
获取或设置一个值,该值指示处理程序是否应遵循重定向响应。 |
| AutomaticDecompression |
获取或设置处理程序用于自动解压缩 HTTP 内容响应的解压缩方法的类型。 |
| CheckCertificateRevocationList |
获取或设置一个值,该值指示是否根据证书颁发机构吊销列表检查证书。 |
| ClientCertificateOptions |
获取或设置一个值,该值指示证书是否自动从证书存储中选取,或者是否允许调用方传入特定客户端证书。 |
| ClientCertificates |
获取与向服务器的请求关联的安全证书的集合。 |
| CookieContainer |
获取或设置处理程序用于存储服务器 Cookie 的 Cookie 容器。 |
| Credentials |
获取或设置此处理程序使用的身份验证信息。 |
| DangerousAcceptAnyServerCertificateValidator |
获取始终返回的 |
| DefaultProxyCredentials |
使用默认(系统)代理时,获取或设置要提交到默认代理服务器进行身份验证的凭据。 仅当设置为和 |
| MaxAutomaticRedirections |
获取或设置处理程序所遵循的最大重定向数。 |
| MaxConnectionsPerServer |
获取或设置使用 HttpClient 对象发出请求时允许的最大并发连接数(每个服务器终结点)。 请注意,限制是每个服务器终结点,因此,例如,值 256 将允许 256 个并发连接http://www.adatum.com/,另一个 256 个连接。http://www.adventure-works.com/ |
| MaxRequestContentBufferSize |
获取或设置处理程序使用的最大请求内容缓冲区大小。 |
| MaxResponseHeadersLength |
获取或设置响应标头的最大长度(以千字节(1024 字节为单位)。 例如,如果值为 64,则允许最大响应标头长度为 65536 字节。 |
| MeterFactory |
获取或设置IMeterFactory为HttpClientHandler实例创建自定义Meter项。 |
| PreAuthenticate |
获取或设置一个值,该值指示处理程序是否使用请求发送授权标头。 |
| Properties |
获取请求的自定义属性 HttpClient 的可写字典(即映射)。 字典初始化为空;可以为自定义处理程序和特殊处理插入和查询键值对。 |
| Proxy |
获取或设置处理程序使用的代理信息。 |
| ServerCertificateCustomValidationCallback |
获取或设置用于验证服务器证书的回调方法。 |
| SslProtocols |
获取或设置由 HttpClientHandler 对象管理的对象使用的 HttpClient TLS/SSL 协议。 |
| SupportsAutomaticDecompression |
获取一个值,该值指示处理程序是否支持自动响应内容解压缩。 |
| SupportsProxy |
获取一个值,该值指示处理程序是否支持代理设置。 |
| SupportsRedirectConfiguration |
获取一个值,该值指示处理程序是否支持配置 AllowAutoRedirect 设置和 MaxAutomaticRedirections 属性。 |
| UseCookies |
获取或设置一个值,该值指示处理程序是否使用 CookieContainer 属性来存储服务器 Cookie,并在发送请求时使用这些 Cookie。 |
| UseDefaultCredentials |
获取或设置一个值,该值控制是否使用处理程序的请求发送默认凭据。 |
| UseProxy |
获取或设置一个值,该值指示处理程序是否对请求使用代理。 |
方法
| 名称 | 说明 |
|---|---|
| Dispose() |
释放非托管资源并释放由该 HttpMessageHandler资源使用的托管资源。 (继承自 HttpMessageHandler) |
| Dispose(Boolean) |
释放托管资源(可选)使用 HttpClientHandler 的非托管资源。 |
| Equals(Object) |
确定指定的对象是否等于当前对象。 (继承自 Object) |
| GetHashCode() |
用作默认哈希函数。 (继承自 Object) |
| GetType() |
获取当前实例的 Type。 (继承自 Object) |
| MemberwiseClone() |
创建当前 Object的浅表副本。 (继承自 Object) |
| Send(HttpRequestMessage, CancellationToken) |
创建基于 中HttpRequestMessage提供的信息的实例HttpResponseMessage。 |
| SendAsync(HttpRequestMessage, CancellationToken) |
创建一个实例,该实例 HttpResponseMessage 基于作为不会阻止的操作中 HttpRequestMessage 提供的信息。 |
| ToString() |
返回一个表示当前对象的字符串。 (继承自 Object) |