Поделиться через


HttpClient.GetBufferAsync(Uri) Метод

Определение

Отправьте запрос GET на указанный универсальный код ресурса (URI) и верните текст ответа в качестве буфера в асинхронной операции. Руководство по программированию для класса HttpClient и примеры кода см. в разделе о концепции 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)

Параметры

uri
Uri Uri

Универсальный код ресурса (URI), по которому отправляется запрос.

Возвращаемое значение

Объект , представляющий асинхронную операцию.

Атрибуты

Комментарии

Этот метод обычно вызывается при скачивании двоичного содержимого, например небольших изображений и сжатых файлов. Очень большое двоичное содержимое должно быть загружено в виде потока с помощью HttpClient.GetInputStreamAsync , чтобы предотвратить ненужные буферизации.

Эта операция не блокируется. Возвращенный объект IAsyncOperationWithProgress (из IBuffer и HttpProgress) завершается после считывания всего текста ответа.

Класс HttpClient часто используется приложением для скачивания и последующего анализа текста. Возможно, кодировка символов, указанная в заголовке Content-Type HTTP-сервером , не соответствует кодировке символов текста HTTP-ответа (например, кодировка XML в XML-документе). Один из способов использования HttpClient с текстом — вызвать метод GetStringAsync и передать возвращенную строку в средство синтаксического анализа текста. Однако это может привести к ошибкам, если Content-Type не является типом, который можно выразить в виде строки. Надежный способ использования HttpClient со средством синтаксического анализа XML заключается в вызове метода GetBufferAsync и анализе буфера для элемента "<?xml>". Затем используйте указанную кодировку символов ("<xmlversion="1.0" encoding="UTF-8"?>", например), чтобы проанализировать текст HTTP-ответа. Для других текстовых форматов аналогичные методы можно использовать, когда приложение сканирует начальную часть текста HTTP-ответа, чтобы определить используемую кодировку символов.

Ниже приведены исключения, создаваемые этой функцией.

E_INVALIDARG

Параметр URI был пустой ссылкой (Nothing в Visual Basic).

Применяется к

См. также раздел