HttpClient.GetStreamAsync Метод

Определение

Отправьте запрос GET в указанный универсальный код ресурса (URI) и верните текст ответа в виде потока в асинхронной операции.

Перегрузки

Имя Описание
GetStreamAsync(Uri)

Отправьте запрос GET в указанный универсальный код ресурса (URI) и верните текст ответа в виде потока в асинхронной операции.

GetStreamAsync(String)

Отправьте запрос GET в указанный универсальный код ресурса (URI) и верните текст ответа в виде потока в асинхронной операции.

Комментарии

Операция не блокируется.

GetStreamAsync(Uri)

Отправьте запрос GET в указанный универсальный код ресурса (URI) и верните текст ответа в виде потока в асинхронной операции.

public:
 System::Threading::Tasks::Task<System::IO::Stream ^> ^ GetStreamAsync(Uri ^ requestUri);
public System.Threading.Tasks.Task<System.IO.Stream> GetStreamAsync(Uri requestUri);
member this.GetStreamAsync : Uri -> System.Threading.Tasks.Task<System.IO.Stream>
Public Function GetStreamAsync (requestUri As Uri) As Task(Of Stream)

Параметры

requestUri
Uri

URI, в который отправляется запрос.

Возвращаемое значение

Объект задачи, представляющий асинхронную операцию.

Исключения

Не requestUri является абсолютным универсальным кодом ресурса (URI) и BaseAddress не задан.

Сбой запроса из-за проблемы с получением допустимого HTTP-ответа, например сбой сетевого подключения, сбой DNS, ошибка проверки сертификата сервера или недопустимый ответ сервера. На .NET 8 и более поздних версиях причина указывается HttpRequestError

–или–

Код состояния ответа был вне диапазона 200–299 (который указывает на успешность в соответствии со стандартом).

–или–

только .NET Framework: истекло время ожидания запроса.

.NET Core и .NET 5 и более поздних версий: запрос завершился ошибкой из-за времени ожидания.

Комментарии

Эта операция не блокируется. Возвращенный объект Task<Stream> завершится после чтения заголовков ответа. Этот метод не считывает и не буферизирует текст отклика. Внутри системы эта операция используется HttpResponseMessage.EnsureSuccessStatusCode для обеспечения того, чтобы код состояния ответа находится в диапазоне успешности (200–299) и вызывает исключение HttpRequestException , если оно не так. В некоторых сценариях может потребоваться больше контроля над кодами состояния, которые считаются успешными; Например, api может всегда возвращать 200 OK. В таких случаях рекомендуется вручную проверить, соответствует ли StatusCode ожидаемое значение.

Note

В случае ожидания:

Применяется к

GetStreamAsync(String)

Отправьте запрос GET в указанный универсальный код ресурса (URI) и верните текст ответа в виде потока в асинхронной операции.

public:
 System::Threading::Tasks::Task<System::IO::Stream ^> ^ GetStreamAsync(System::String ^ requestUri);
public System.Threading.Tasks.Task<System.IO.Stream> GetStreamAsync(string requestUri);
member this.GetStreamAsync : string -> System.Threading.Tasks.Task<System.IO.Stream>
Public Function GetStreamAsync (requestUri As String) As Task(Of Stream)

Параметры

requestUri
String

URI, в который отправляется запрос.

Возвращаемое значение

Объект задачи, представляющий асинхронную операцию.

Исключения

Не requestUri является абсолютным универсальным кодом ресурса (URI) и BaseAddress не задан.

Сбой запроса из-за проблемы с получением допустимого HTTP-ответа, например сбой сетевого подключения, сбой DNS, ошибка проверки сертификата сервера или недопустимый ответ сервера. На .NET 8 и более поздних версиях причина указывается HttpRequestError

–или–

Код состояния ответа был вне диапазона 200–299 (который указывает на успешность в соответствии со стандартом).

–или–

только .NET Framework: истекло время ожидания запроса.

.NET Core и .NET 5 и более поздних версий: запрос завершился ошибкой из-за времени ожидания.

Предоставленный URI запроса не является допустимым относительным или абсолютным универсальным кодом ресурса (URI).

Комментарии

Эта операция не блокируется. Возвращенный объект Task<Stream> завершится после чтения заголовков ответа. Этот метод не считывает или буферизирует текст отклика. Внутри системы эта операция используется HttpResponseMessage.EnsureSuccessStatusCode для обеспечения того, чтобы код состояния ответа находится в диапазоне успешности (200–299) и вызывает исключение HttpRequestException , если оно не так. В некоторых сценариях может потребоваться больше контроля над кодами состояния, которые считаются успешными; Например, api может всегда возвращать 200 OK. В таких случаях рекомендуется вручную проверить, соответствует ли StatusCode ожидаемое значение.

Note

В случае ожидания:

Применяется к