HttpClient.GetStreamAsync Método

Definición

Envíe una solicitud GET al URI especificado y devuelva el cuerpo de la respuesta como una secuencia en una operación asincrónica.

Sobrecargas

Nombre Description
GetStreamAsync(Uri)

Envíe una solicitud GET al URI especificado y devuelva el cuerpo de la respuesta como una secuencia en una operación asincrónica.

GetStreamAsync(String)

Envíe una solicitud GET al URI especificado y devuelva el cuerpo de la respuesta como una secuencia en una operación asincrónica.

Comentarios

La operación no se bloqueará.

GetStreamAsync(Uri)

Envíe una solicitud GET al URI especificado y devuelva el cuerpo de la respuesta como una secuencia en una operación asincrónica.

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)

Parámetros

requestUri
Uri

Identificador URI al que se envía la solicitud.

Devoluciones

Objeto de tarea que representa la operación asincrónica.

Excepciones

no requestUri es un URI absoluto y BaseAddress no se establece.

Error en la solicitud debido a un problema al obtener una respuesta HTTP válida, como un error de conectividad de red, un error dns, un error de validación del certificado de servidor o una respuesta de servidor no válida. En .NET 8 y versiones posteriores, el motivo se indica mediante HttpRequestError

O bien

El código de estado de respuesta estaba fuera del intervalo comprendido entre 200 y 299 (lo que indica que se realizó correctamente según el estándar).

O bien

solo .NET Framework: se agota el tiempo de espera de la solicitud.

.NET Core y .NET 5 y versiones posteriores solo: error en la solicitud debido al tiempo de espera.

Comentarios

Esta operación no se bloquea. El objeto Task<Stream> devuelto se completará una vez leídos los encabezados de respuesta. Este método no lee ni almacena en búfer el cuerpo de la respuesta. Internamente, esta operación usa HttpResponseMessage.EnsureSuccessStatusCode para asegurarse de que el código de estado de respuesta está en el intervalo correcto (200-299) y produce un HttpRequestException si no lo es. En algunos escenarios, es posible que necesite más control sobre qué códigos de estado se consideran correctos; por ejemplo, se puede esperar que una API devuelva siempre 200 OK. En tales casos, se recomienda comprobar manualmente si StatusCode coincide con el valor esperado.

Note

En el caso de un tiempo de espera:

Se aplica a

GetStreamAsync(String)

Envíe una solicitud GET al URI especificado y devuelva el cuerpo de la respuesta como una secuencia en una operación asincrónica.

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)

Parámetros

requestUri
String

Identificador URI al que se envía la solicitud.

Devoluciones

Objeto de tarea que representa la operación asincrónica.

Excepciones

no requestUri es un URI absoluto y BaseAddress no se establece.

Error en la solicitud debido a un problema al obtener una respuesta HTTP válida, como un error de conectividad de red, un error dns, un error de validación del certificado de servidor o una respuesta de servidor no válida. En .NET 8 y versiones posteriores, el motivo se indica mediante HttpRequestError

O bien

El código de estado de respuesta estaba fuera del intervalo comprendido entre 200 y 299 (lo que indica que se realizó correctamente según el estándar).

O bien

solo .NET Framework: se agota el tiempo de espera de la solicitud.

.NET Core y .NET 5 y versiones posteriores solo: error en la solicitud debido al tiempo de espera.

El URI de solicitud proporcionado no es un URI relativo o absoluto válido.

Comentarios

Esta operación no se bloquea. El objeto Task<Stream> devuelto se completará una vez leídos los encabezados de respuesta. Este método no lee ni almacena en búfer el cuerpo de la respuesta. Internamente, esta operación usa HttpResponseMessage.EnsureSuccessStatusCode para asegurarse de que el código de estado de respuesta está en el intervalo correcto (200-299) y produce un HttpRequestException si no lo es. En algunos escenarios, es posible que necesite más control sobre qué códigos de estado se consideran correctos; por ejemplo, se puede esperar que una API devuelva siempre 200 OK. En tales casos, se recomienda comprobar manualmente si StatusCode coincide con el valor esperado.

Note

En el caso de un tiempo de espera:

Se aplica a