HttpClient.SendRequestAsync Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
SendRequestAsync(HttpRequestMessage) |
Envía una solicitud HTTP como una operación asincrónica. Para obtener instrucciones de programación para la clase HttpClient y ejemplos de código, consulte el tema conceptual HttpClient . |
SendRequestAsync(HttpRequestMessage, HttpCompletionOption) |
Enviar una solicitud HTTP con una opción de finalización HTTP como una operación asincrónica. Para obtener instrucciones de programación para la clase HttpClient y ejemplos de código, consulte el tema conceptual HttpClient . |
SendRequestAsync(HttpRequestMessage)
Envía una solicitud HTTP como una operación asincrónica. Para obtener instrucciones de programación para la clase HttpClient y ejemplos de código, consulte el tema conceptual HttpClient .
public:
virtual IAsyncOperationWithProgress<HttpResponseMessage ^, HttpProgress> ^ SendRequestAsync(HttpRequestMessage ^ request) = SendRequestAsync;
/// [Windows.Foundation.Metadata.Overload("SendRequestAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<HttpResponseMessage, HttpProgress> SendRequestAsync(HttpRequestMessage const& request);
[Windows.Foundation.Metadata.Overload("SendRequestAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<HttpResponseMessage,HttpProgress> SendRequestAsync(HttpRequestMessage request);
function sendRequestAsync(request)
Public Function SendRequestAsync (request As HttpRequestMessage) As IAsyncOperationWithProgress(Of HttpResponseMessage, HttpProgress)
Parámetros
- request
- HttpRequestMessage
Mensaje de la solicitud HTTP que se va a enviar.
Devoluciones
Objeto que representa la operación asincrónica.
- Atributos
Comentarios
Esta operación no se bloqueará. La IAsyncOperationWithProgress devuelta (de HttpResponseMessage y HttpProgress) se completa después de leer toda la respuesta (incluido el contenido).
El httpRequestMessage pasado en el parámetro de solicitud permite que el método SendRequestAsync establezca encabezados en el mensaje de solicitud, así como en el contenido HTTP que se va a enviar. En cambio, los métodos PostAsync y PutAsync solo permiten establecer un conjunto más limitado de encabezados de contenido HTTP.
A continuación se muestran las excepciones que produce esta función.
E_ILLEGAL_METHOD_CALL
La instancia de HttpClient ya envió el mensaje de solicitud.
Control de excepciones
Debe escribir código para controlar las excepciones al llamar a este método. Las excepciones pueden deberse a errores de validación de parámetros, errores de resolución de nombres y errores de red. Las excepciones de los errores de red (pérdida de conectividad, errores de conexión y errores de servidor HTTP, por ejemplo) pueden producirse en cualquier momento. Estos errores hacen que se arrojen excepciones. Si la aplicación no la controla, una excepción puede hacer que el tiempo de ejecución finalice toda la aplicación. Para obtener más información sobre cómo controlar las excepciones, consulte Control de excepciones en aplicaciones de red y Cómo: Asignar HRESULTs y Excepciones.
Consulte también
- HttpRequestMessage
- PostAsync(Uri, IHttpContent)
- PutAsync(Uri, IHttpContent)
- SendRequestAsync(HttpRequestMessage, HttpCompletionOption)
- HttpClient
Se aplica a
SendRequestAsync(HttpRequestMessage, HttpCompletionOption)
Enviar una solicitud HTTP con una opción de finalización HTTP como una operación asincrónica. Para obtener instrucciones de programación para la clase HttpClient y ejemplos de código, consulte el tema conceptual HttpClient .
public:
virtual IAsyncOperationWithProgress<HttpResponseMessage ^, HttpProgress> ^ SendRequestAsync(HttpRequestMessage ^ request, HttpCompletionOption completionOption) = SendRequestAsync;
/// [Windows.Foundation.Metadata.Overload("SendRequestWithOptionAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<HttpResponseMessage, HttpProgress> SendRequestAsync(HttpRequestMessage const& request, HttpCompletionOption const& completionOption);
[Windows.Foundation.Metadata.Overload("SendRequestWithOptionAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<HttpResponseMessage,HttpProgress> SendRequestAsync(HttpRequestMessage request, HttpCompletionOption completionOption);
function sendRequestAsync(request, completionOption)
Public Function SendRequestAsync (request As HttpRequestMessage, completionOption As HttpCompletionOption) As IAsyncOperationWithProgress(Of HttpResponseMessage, HttpProgress)
Parámetros
- request
- HttpRequestMessage
Mensaje de la solicitud HTTP que se va a enviar.
- completionOption
- HttpCompletionOption
Valor que indica si la operación HttpClient se considera completada cuando se lee toda la respuesta o cuando solo se leen los encabezados.
Devoluciones
Objeto que representa la operación asincrónica.
- Atributos
Comentarios
Esta operación no se bloqueará. La IAsyncOperationWithProgress devuelta (de HttpResponseMessage y HttpProgress) se completa en función del valor del parámetro completionOption .
El httpRequestMessage pasado en el parámetro de solicitud permite que el método SendRequestAsync establezca encabezados en el mensaje de solicitud, así como en el contenido HTTP que se va a enviar. En cambio, los métodos PostAsync y PutAsync solo permiten establecer un conjunto más limitado de encabezados de contenido HTTP.
A continuación se muestran las excepciones que produce esta función.
E_ILLEGAL_METHOD_CALL
La instancia de HttpClient ya envió el mensaje de solicitud.
Control de excepciones
Debe escribir código para controlar las excepciones al llamar a este método. Las excepciones pueden deberse a errores de validación de parámetros, errores de resolución de nombres y errores de red. Las excepciones de los errores de red (pérdida de conectividad, errores de conexión y errores de servidor HTTP, por ejemplo) pueden producirse en cualquier momento. Estos errores hacen que se arrojen excepciones. Si la aplicación no la controla, una excepción puede hacer que el tiempo de ejecución finalice toda la aplicación. Para obtener más información sobre cómo controlar las excepciones, consulte Control de excepciones en aplicaciones de red y Cómo: Asignar HRESULTs y Excepciones.