HttpClient.TryGetBufferAsync(Uri) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inviare una richiesta GET all'URI specificato e restituire il corpo della risposta come HttpGetBufferResult con un valore IBuffer in un'operazione asincrona. Per indicazioni sulla programmazione per la classe HttpClient ed esempi di codice, vedere l'argomento concettuale HttpClient .
public:
virtual IAsyncOperationWithProgress<HttpGetBufferResult ^, HttpProgress> ^ TryGetBufferAsync(Uri ^ uri) = TryGetBufferAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<HttpGetBufferResult, HttpProgress> TryGetBufferAsync(Uri const& uri);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<HttpGetBufferResult,HttpProgress> TryGetBufferAsync(System.Uri uri);
function tryGetBufferAsync(uri)
Public Function TryGetBufferAsync (uri As Uri) As IAsyncOperationWithProgress(Of HttpGetBufferResult, HttpProgress)
Parametri
Restituisce
Oggetto che rappresenta l'operazione asincrona.
- Attributi
Requisiti Windows
Famiglia di dispositivi |
Windows 10, version 1903 (è stato introdotto in 10.0.18362.0)
|
API contract |
Windows.Foundation.UniversalApiContract (è stato introdotto in v8.0)
|
Commenti
Questo metodo viene comunemente chiamato durante il download di contenuto binario, ad esempio immagini di piccole dimensioni e file compressi. Il contenuto binario molto grande deve essere scaricato come flusso con HttpClient.TryGetInputStreamAsync per impedire il buffering non necessario.
Questa operazione non verrà bloccata. L'oggetto IAsyncOperationWithProgress restituito (di HttpGetBufferResult 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 ( ad esempio la codifica XML in un documento XML). Un modo per usare HttpClient con testo consiste nel chiamare il metodo TryGetStringAsync e passare la stringa restituita al parser di testo. Tuttavia, questo può causare errori se Content-Type non è un tipo expressible come stringa. Un modo affidabile per usare HttpClient con un parser XML consiste nel chiamare il metodo TryGetBufferAsync 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.