HttpClient.SendRequestAsync Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
SendRequestAsync(HttpRequestMessage) |
Отправка HTTP-запроса в качестве асинхронной операции. Рекомендации по программированию для класса HttpClient и примеры кода см. в разделе Основные сведения о HttpClient . |
SendRequestAsync(HttpRequestMessage, HttpCompletionOption) |
Отправка HTTP-запроса с параметром завершения HTTP в качестве асинхронной операции. Рекомендации по программированию для класса HttpClient и примеры кода см. в разделе Основные сведения о HttpClient . |
SendRequestAsync(HttpRequestMessage)
Отправка HTTP-запроса в качестве асинхронной операции. Рекомендации по программированию для класса HttpClient и примеры кода см. в разделе Основные сведения о 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)
Параметры
- request
- HttpRequestMessage
Сообщение HTTP-запроса для отправки.
Возвращаемое значение
Объект , представляющий асинхронную операцию.
- Атрибуты
Комментарии
Эта операция не блокируется. Возвращенный объект IAsyncOperationWithProgress ( httpResponseMessage и HttpProgress) завершается после считывания всего ответа (включая содержимое).
HttpRequestMessage, переданный в параметре запроса, позволяет методу SendRequestAsync задавать заголовки в сообщении запроса, а также в отправляемом содержимом HTTP. В отличие от этого, методы PostAsync и PutAsync позволяют задавать только более ограниченный набор заголовков содержимого HTTP.
Ниже приведены исключения, создаваемые этой функцией.
E_ILLEGAL_METHOD_CALL
Сообщение запроса уже отправлено экземпляром HttpClient .
Обработка исключений
При вызове этого метода необходимо написать код для обработки исключений. Исключения могут возникать из-за ошибок проверки параметров, ошибок разрешения имен и сетевых ошибок. Исключения из сетевых ошибок (например, потеря подключения, сбои подключения и сбои HTTP-сервера) могут произойти в любое время. В результате таких ошибок создаются исключения. Если приложение не обрабатывается, исключение может привести к завершению всего приложения средой выполнения. Дополнительные сведения об обработке исключений см. в разделах Обработка исключений в сетевых приложениях и Практическое руководство. Сопоставление HRESULT и исключений.
См. также раздел
- HttpRequestMessage
- PostAsync(Uri, IHttpContent)
- PutAsync(Uri, IHttpContent)
- SendRequestAsync(HttpRequestMessage, HttpCompletionOption)
- HttpClient
Применяется к
SendRequestAsync(HttpRequestMessage, HttpCompletionOption)
Отправка HTTP-запроса с параметром завершения HTTP в качестве асинхронной операции. Рекомендации по программированию для класса HttpClient и примеры кода см. в разделе Основные сведения о 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)
Параметры
- request
- HttpRequestMessage
Сообщение HTTP-запроса для отправки.
- completionOption
- HttpCompletionOption
Значение типа , указывающее, считается ли операция HttpClient завершенной при чтении всего ответа или при чтении только заголовков.
Возвращаемое значение
Объект , представляющий асинхронную операцию.
- Атрибуты
Комментарии
Эта операция не блокируется. Возвращенный объект IAsyncOperationWithProgress ( httpResponseMessage и HttpProgress) завершается в зависимости от значения параметра completionOption .
HttpRequestMessage, переданный в параметре запроса, позволяет методу SendRequestAsync задавать заголовки в сообщении запроса, а также в отправляемом содержимом HTTP. В отличие от этого, методы PostAsync и PutAsync позволяют задавать только более ограниченный набор заголовков содержимого HTTP.
Ниже приведены исключения, создаваемые этой функцией.
E_ILLEGAL_METHOD_CALL
Сообщение запроса уже отправлено экземпляром HttpClient .
Обработка исключений
При вызове этого метода необходимо написать код для обработки исключений. Исключения могут возникать из-за ошибок проверки параметров, ошибок разрешения имен и сетевых ошибок. Исключения из сетевых ошибок (например, потеря подключения, сбои подключения и сбои HTTP-сервера) могут произойти в любое время. В результате таких ошибок создаются исключения. Если приложение не обрабатывается, исключение может привести к завершению всего приложения средой выполнения. Дополнительные сведения об обработке исключений см. в разделах Обработка исключений в сетевых приложениях и Практическое руководство. Сопоставление HRESULT и исключений.