Share via


HttpClient.GetBufferAsync(Uri) Método

Definición

Envíe una solicitud GET al URI especificado y devuelva el cuerpo de la respuesta como búfer en una operación asincrónica. Para obtener instrucciones de programación para la clase HttpClient y ejemplos de código, consulte el tema conceptual 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)

Parámetros

uri
Uri Uri

URI al que se envía la solicitud.

Devoluciones

Objeto que representa la operación asincrónica.

Atributos

Comentarios

Normalmente, se llama a este método al descargar contenido binario, como imágenes pequeñas y archivos comprimidos. El contenido binario muy grande debe descargarse como una secuencia con HttpClient.GetInputStreamAsync para evitar el almacenamiento en búfer innecesario.

Esta operación no se bloqueará. La IAsyncOperationWithProgress devuelta (de IBuffer y HttpProgress) se completa después de leer todo el cuerpo de la respuesta.

Una aplicación suele usar la clase HttpClient para descargar y, a continuación, analizar texto. Es posible que la codificación de caracteres especificada en el encabezado Content-Type de un servidor HTTP no coincida con la codificación de caracteres del cuerpo de respuesta HTTP (la codificación XML en un documento XML, por ejemplo). Una manera de usar HttpClient con texto es llamar al método GetStringAsync y pasar la cadena devuelta al analizador de texto. Sin embargo, esto puede producir errores si content-type no es un tipo que se puede expresar como una cadena. Una manera confiable de usar HttpClient con un analizador XML es llamar al método GetBufferAsync y analizar el búfer para el elemento "<?xml>". A continuación, use la codificación de caracteres especificada ("<xmlversion="1.0" encoding="UTF-8"?>", por ejemplo) para analizar el cuerpo de la respuesta HTTP. En el caso de otros formatos de texto, se pueden usar métodos similares en los que la aplicación examina la parte inicial del cuerpo de respuesta HTTP para determinar la codificación de caracteres usada.

A continuación se muestran las excepciones que produce esta función.

E_INVALIDARG

El parámetro URI era una referencia nula (Nothing en Visual Basic).

Se aplica a

Consulte también