Condividi tramite


HttpClient.GetBufferAsync(Uri) Metodo

Definizione

Inviare una richiesta GET all'URI specificato e restituire il corpo della risposta come buffer in un'operazione asincrona. Per indicazioni sulla programmazione per la classe HttpClient ed esempi di codice, vedere l'argomento concettuale HttpClient .

public:
 virtual IAsyncOperationWithProgress<IBuffer ^, HttpProgress> ^ GetBufferAsync(Uri ^ uri) = GetBufferAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<IBuffer, HttpProgress> GetBufferAsync(Uri const& uri);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<IBuffer,HttpProgress> GetBufferAsync(System.Uri uri);
function getBufferAsync(uri)
Public Function GetBufferAsync (uri As Uri) As IAsyncOperationWithProgress(Of IBuffer, HttpProgress)

Parametri

uri
Uri Uri

L'URI a cui viene inviata la richiesta.

Restituisce

Oggetto che rappresenta l'operazione asincrona.

Attributi

Commenti

Questo metodo viene comunemente chiamato quando si scarica contenuto binario, ad esempio piccole immagini e file compressi. Il contenuto binario molto grande deve essere scaricato come flusso con HttpClient.GetInputStreamAsync per evitare il buffer non richiesto.

Questa operazione non verrà bloccata. Il valore restituito IAsyncOperationWithProgress (di IBuffer e HttpProgress) viene completato dopo la lettura dell'intero corpo della risposta.

La classe HttpClient viene spesso usata da un'app per scaricare e quindi analizzare il testo. È possibile che la codifica dei caratteri specificata nell'intestazione Content-Type da un server HTTP non corrisponda alla codifica dei caratteri del corpo della risposta HTTP (la codifica XML in un documento XML, ad esempio). Un modo per usare HttpClient con testo consiste nel chiamare il metodo GetStringAsync e passare la stringa restituita al parser di testo. Tuttavia, questo può causare errori se il tipo di contenuto non è un tipo expressible come stringa. Un modo affidabile per usare HttpClient con un parser XML consiste nel chiamare il metodo GetBufferAsync e analizzare il buffer per l'elemento "<?xml>". Usare quindi la codifica dei caratteri specificata ("<xmlversion="1.0" encoding="UTF-8"?>", ad esempio) per analizzare il corpo della risposta HTTP. Per altri formati di testo, è possibile usare metodi simili in cui l'app analizza la parte iniziale del corpo della risposta HTTP per determinare la codifica dei caratteri usata.

Di seguito sono riportate le eccezioni generate da questa funzione.

E_INVALIDARG

Il parametro URI è un riferimento Null (Nothing in Visual Basic).

Si applica a

Vedi anche