HttpClient.GetStreamAsync Metodo

Definizione

Inviare una richiesta GET all'URI specificato e restituire il corpo della risposta come flusso in un'operazione asincrona.

Overload

Nome Descrizione
GetStreamAsync(Uri)

Inviare una richiesta GET all'URI specificato e restituire il corpo della risposta come flusso in un'operazione asincrona.

GetStreamAsync(String)

Inviare una richiesta GET all'URI specificato e restituire il corpo della risposta come flusso in un'operazione asincrona.

Commenti

L'operazione non verrà bloccata.

GetStreamAsync(Uri)

Inviare una richiesta GET all'URI specificato e restituire il corpo della risposta come flusso in un'operazione asincrona.

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)

Parametri

requestUri
Uri

URI a cui viene inviata la richiesta.

Valori restituiti

Oggetto attività che rappresenta l'operazione asincrona.

Eccezioni

Non requestUri è un URI assoluto e BaseAddress non è impostato.

La richiesta non è riuscita a causa di un problema durante il recupero di una risposta HTTP valida, ad esempio un errore di connettività di rete, un errore DNS, un errore di convalida del certificato del server o una risposta del server non valida. In .NET 8 e versioni successive, il motivo è indicato da HttpRequestError

oppure

Il codice di stato della risposta non è compreso nell'intervallo compreso tra 200 e 299 (che indica l'esito positivo in base allo standard).

oppure

solo .NET Framework: timeout della richiesta.

.NET Core e .NET 5 e versioni successive: la richiesta non è riuscita a causa del timeout.

Commenti

Questa operazione non viene bloccata. L'oggetto Flusso> attività restituito< verrà completato dopo la lettura delle intestazioni di risposta. Questo metodo non legge né memorizza nel buffer il corpo della risposta. Internamente, questa operazione usa HttpResponseMessage.EnsureSuccessStatusCode per assicurarsi che il codice di stato della risposta sia compreso nell'intervallo di esito positivo (200-299) e genera un'eccezione HttpRequestException in caso contrario. In alcuni scenari potrebbe essere necessario un maggiore controllo sui codici di stato considerati efficaci; Ad esempio, potrebbe essere previsto che un'API restituisca 200 OKsempre . In questi casi, è consigliabile controllare manualmente se StatusCode corrisponde al valore previsto.

Note

In caso di timeout:

Si applica a

GetStreamAsync(String)

Inviare una richiesta GET all'URI specificato e restituire il corpo della risposta come flusso in un'operazione asincrona.

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)

Parametri

requestUri
String

URI a cui viene inviata la richiesta.

Valori restituiti

Oggetto attività che rappresenta l'operazione asincrona.

Eccezioni

Non requestUri è un URI assoluto e BaseAddress non è impostato.

La richiesta non è riuscita a causa di un problema durante il recupero di una risposta HTTP valida, ad esempio un errore di connettività di rete, un errore DNS, un errore di convalida del certificato del server o una risposta del server non valida. In .NET 8 e versioni successive, il motivo è indicato da HttpRequestError

oppure

Il codice di stato della risposta non è compreso nell'intervallo compreso tra 200 e 299 (che indica l'esito positivo in base allo standard).

oppure

solo .NET Framework: timeout della richiesta.

.NET Core e .NET 5 e versioni successive: la richiesta non è riuscita a causa del timeout.

L'URI della richiesta fornito non è un URI relativo o assoluto valido.

Commenti

Questa operazione non viene bloccata. L'oggetto Flusso> attività restituito< verrà completato dopo la lettura delle intestazioni di risposta. Questo metodo non legge o memorizza nel buffer il corpo della risposta. Internamente, questa operazione usa HttpResponseMessage.EnsureSuccessStatusCode per assicurarsi che il codice di stato della risposta sia compreso nell'intervallo di esito positivo (200-299) e genera un'eccezione HttpRequestException in caso contrario. In alcuni scenari potrebbe essere necessario un maggiore controllo sui codici di stato considerati efficaci; Ad esempio, potrebbe essere previsto che un'API restituisca 200 OKsempre . In questi casi, è consigliabile controllare manualmente se StatusCode corrisponde al valore previsto.

Note

In caso di timeout:

Si applica a