WinHttpHandler Clase

Definición

Controla los mensajes basándose en la interfaz WinHTTP de Windows.Handles messages based on the WinHTTP interface of Windows. Esta clase está pensada para usarse en entornos de servidor.This class is intended for use in server environments.

public ref class WinHttpHandler : System::Net::Http::HttpMessageHandler
public class WinHttpHandler : System.Net.Http.HttpMessageHandler
type WinHttpHandler = class
    inherit HttpMessageHandler
Public Class WinHttpHandler
Inherits HttpMessageHandler
Herencia
WinHttpHandler

Comentarios

WinHttpHandler es similar a otras clases existentes como HttpClientHandler .WinHttpHandler is similar to other existing classes such as HttpClientHandler. WinHttpHandler proporciona un controlador bajo una HttpClient instancia de y se utiliza para enviar las solicitudes HTTP a un servidor y recibir respuestas del servidor.WinHttpHandler provides a handler underneath an HttpClient instance and is used to send HTTP requests out to a server and receive server responses.

WinHttpHandler está diseñado para usarse principalmente en entornos de servidor ASP.NET Core y otras aplicaciones .NET que se comunican con los servidores HTTP.WinHttpHandler is designed to be used primarily in server environments by ASP.NET Core and other .NET applications that communicate with HTTP servers. WinHttpHandler también proporciona a los desarrolladores un control más granular sobre la comunicación HTTP de la aplicación que la HttpClientHandler clase.WinHttpHandler also provides developers with more granular control over the application's HTTP communication than the HttpClientHandler class. Esto permite a los desarrolladores implementar escenarios HTTP más avanzados o modificar los valores predeterminados del sistema (por ejemplo, la configuración de proxy, los tiempos de espera y la validación de certificados SSL de servidor).This allows developers to implement more advanced HTTP scenarios or modify system defaults (for example, proxy settings, timeouts, and server SSL certificate validation).

WinHttpHandler no pretende ser un sustituto para HttpClientHandler .WinHttpHandler is not intended to be a replacement for HttpClientHandler. En su lugar, se trata de una versión más avanzada que se proporciona para escenarios en los que HttpClientHandler no es suficiente.Instead, it's a more advanced version that's provided for scenarios where HttpClientHandler is insufficient. WinHttpHandler se implementa como un contenedor fino en la interfaz WinHTTP de Windows y solo se admite en sistemas Windows.WinHttpHandler is implemented as a thin wrapper on the WinHTTP interface of Windows and is only supported on Windows systems.

Cuando se usa una cadena de varios controladores, WinHttpHandler debe estar en la parte inferior de la cadena.When using a chain of multiple handlers, WinHttpHandler should be at the bottom of the chain.

Esta clase también está disponible para su uso en aplicaciones de escritorio mediante su instalación como un paquete NuGet.This class is also available for use in Desktop apps by installing it as a NuGet package. Para obtener más información, vea paquete de NuGet System .net. http. WinHttpHandler.For more information, see System.Net.Http.WinHttpHandler NuGet package.

A partir de .NET 5,0, ya WinHttpHandler no se incluye en el ensamblado System.Net.Http.dll como parte del tiempo de ejecución de .net.Starting in .NET 5.0, WinHttpHandler is no longer included in the System.Net.Http.dll assembly as part of the .NET runtime. Para obtener más información, vea WinHttpHandler quitado del entorno de ejecución de .net.For more information, see WinHttpHandler removed from .NET runtime.

Constructores

WinHttpHandler()

Inicializa una nueva instancia de la clase WinHttpHandler.Initializes a new instance of the WinHttpHandler class.

Propiedades

AutomaticDecompression

Obtiene o establece el tipo de método de descompresión usado por el controlador para la descompresión automática de la respuesta de contenido HTTP.Gets or sets the type of decompression method used by the handler for automatic decompression of the HTTP content response.

AutomaticRedirection

Obtiene o establece un valor que indica si el controlador debe seguir las respuestas de redirección HTTP.Gets or sets a value that indicates whether the handler should follow HTTP redirection responses.

CheckCertificateRevocationList

Obtiene o establece un valor que indica si se debe comprobar la lista de revocación de certificados durante la validación de certificados SSL.Gets or sets a value that indicates whether to check the revocation list of certificates during SSL certificate validation.

ClientCertificateOption

Obtiene o establece un valor que indica si el certificado se ha seleccionado automáticamente desde el almacén de certificados o si el autor de llamada tiene permiso para pasar un certificado de cliente específico.Gets or sets a value that indicates if the certificate is automatically picked from the certificate store or if the caller is allowed to pass in a specific client certificate.

ClientCertificates

Permite obtener una colección de certificados SSL de autenticación de clientes que usa el controlador para la autenticación de clientes si la propiedad ClientCertificateOption está establecida en Manual.Gets a collection of client authentication SSL certificates that are used for client authentication by the handler if the ClientCertificateOption property is set to Manual.

CookieContainer

Obtiene o establece el objeto contenedor de cookies administrado.Gets or sets the managed cookie container object. Esta propiedad se usa únicamente cuando la propiedad CookieUsePolicy está establecida en UseSpecifiedCookieContainer.This property is only used when the CookieUsePolicy property is set to UseSpecifiedCookieContainer. De lo contrario, el método SendAsync(HttpRequestMessage, CancellationToken) produce una excepción.Otherwise, the SendAsync(HttpRequestMessage, CancellationToken) method will throw an exception.

CookieUsePolicy

Obtiene o establece un valor que indica cómo se deben administrar y usar las cookies.Gets or sets a value that indicates how cookies should be managed and used. Los desarrolladores pueden optar por omitir las cookies, permitir que el controlador las administre de forma automática o controlarlas manualmente mediante un objeto CookieContainer.Developers can choose to ignore cookies, allow the handler to automatically manage them or manually handle them using a CookieContainer object.

DefaultProxyCredentials

Obtiene o establece las credenciales usadas para autenticar al usuario en un proxy de autenticación.Gets or sets the credentials used to authenticate the user to an authenticating proxy.

EnableMultipleHttp2Connections

Obtiene o establece un valor que indica si se pueden establecer conexiones HTTP/2 adicionales al mismo servidor cuando se alcanza el número máximo de flujos simultáneos en todas las conexiones siguientes.Gets or sets a value that indicates whether additional HTTP/2 connections can be established to the same server when the maximum number of concurrent streams is reached on all existing connections.

MaxAutomaticRedirections

Obtiene o establece el número máximo de redirecciones HTTP permitidas.Gets or sets the maximum number of allowed HTTP redirects.

MaxConnectionsPerServer

Obtiene o establece el número máximo de conexiones TCP permitidas en un único servidor.Gets or sets the maximum number of TCP connections allowed to a single server.

MaxResponseDrainSize

Obtiene o establece la cantidad máxima de datos que se pueden agotar de respuestas en bytes.Gets or sets the maximum amount of data that can be drained from responses in bytes.

MaxResponseHeadersLength

Obtiene o establece el tamaño máximo de la parte de encabezado de la respuesta del servidor en bytes.Gets or sets the maximum size of the header portion from the server response in bytes.

PreAuthenticate

Obtiene o establece un valor que indica si el controlador envía un encabezado de autorización con la solicitud.Gets or sets a value that indicates whether the handler sends an Authorization header with the request.

Properties

Obtiene un diccionario que permite la escritura (es decir, un mapa) de propiedades personalizadas para las solicitudes HttpClient.Gets a writable dictionary (that is, a map) of custom properties for the HttpClient requests. El diccionario se inicializa vacío; puede insertar y consultar pares clave-valor para los controladores personalizados y el procesamiento especial.The dictionary is initialized empty; you can insert and query key-value pairs for your custom handlers and special processing.

Proxy

Obtiene o establece el proxy personalizado cuando la propiedad WindowsProxyUsePolicy está establecida para usar un proxy personalizado.Gets or sets the custom proxy when the WindowsProxyUsePolicy property is set to use a custom proxy.

ReceiveDataTimeout

Obtiene o establece el tiempo de espera para recibir la parte de datos de una respuesta del servidor.Gets or sets the timeout for receiving the data portion of a response from the server.

ReceiveHeadersTimeout

Obtiene o establece el tiempo de espera para recibir los encabezados de una respuesta del servidor.Gets or sets the timeout for receiving the headers of a response from the server.

SendTimeout

Obtiene o establece el tiempo de espera para enviar una solicitud.Gets or sets the timeout for sending a request.

ServerCertificateValidationCallback

Obtiene o establece un método de devolución de llamada para validar el certificado de servidor.Gets or sets a callback method to validate the server certificate. Esta devolución de llamada es parte del protocolo de enlace SSL.This callback is part of the SSL handshake.

ServerCredentials

Obtiene o establece las credenciales que va a usar el cliente para autenticarse en el servidor.Gets or sets the credentials to be used by the client to authenticate to the server.

SslProtocols

Obtiene o establece la colección de protocolos TLS/SSL admitidos por el cliente.Gets or sets the collection of TLS/SSL protocols supported by the client.

WindowsProxyUsePolicy

Obtiene o establece la configuración de proxy.Gets or sets the proxy setting. Esta propiedad se puede establecer de modo que se deshabilite el proxy, se use un proxy personalizado o se emplee la configuración de proxy de WinHTTP o WinInet en el equipo.This property can be set to disable the proxy, use a custom proxy, or use the proxy settings of WinHTTP or WinInet on the machine.

Métodos

Dispose()

Libera los recursos no administrados y desecha los recursos administrados que usa HttpMessageHandler.Releases the unmanaged resources and disposes of the managed resources used by the HttpMessageHandler.

(Heredado de HttpMessageHandler)
Dispose(Boolean)

Libera los recursos no administrados que usa WinHttpHandler y, de forma opcional, desecha los recursos administrados.Releases the unmanaged resources used by the WinHttpHandler, and optionally disposes of the managed resources.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
Send(HttpRequestMessage, CancellationToken)

Cuando se invalida en una clase derivada, envía una solicitud HTTP con el token de cancelación y la solicitud especificados.When overridden in a derived class, sends an HTTP request with the specified request and cancellation token. En caso contrario, produce una excepción NotSupportedException.Otherwise, throws a NotSupportedException.

(Heredado de HttpMessageHandler)
SendAsync(HttpRequestMessage, CancellationToken)

Envía una solicitud HTTP como una operación asincrónica.Sends an HTTP request as an asynchronous operation.

ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)

Se aplica a