HttpClient.TryGetBufferAsync(Uri) 方法

定義

將 GET 要求傳送至指定的 Uri,並以非同步作業中的 IBuffer 值傳迴響應本文作為 HttpGetBufferResult 。 如需 HttpClient 類別的程式設計指引和程式碼範例,請參閱 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)

參數

uri
Uri Uri

傳送要求的目標 URI。

傳回

表示非同步作業的 物件。

屬性

Windows 需求

裝置系列
Windows 10, version 1903 (已於 10.0.18362.0 引進)
API contract
Windows.Foundation.UniversalApiContract (已於 v8.0 引進)

備註

下載小型影像和壓縮檔等二進位內容時,通常會呼叫這個方法。 應該使用 HttpClient.TryGetInputStreamAsync 將非常大型的二進位內容下載為數據流,以防止不必要的緩衝處理。

這項作業不會封鎖。 傳回的 IAsyncOperationWithProgress (HttpGetBufferResultHttpProgress) 會在讀取整個回應本文之後完成。

HttpClient類別通常由應用程式用來下載並剖析文字。 HTTP 伺服器在 Content-Type 標頭中指定的字元編碼可能不符合 HTTP 回應本文的字元編碼, (XML 檔中的 XML 編碼,例如) 。 搭配文字使用 HttpClient 的其中一種方式是呼叫 TryGetStringAsync 方法,並將傳回的字串傳遞至文字剖析器。 不過,如果 Content-Type 不是字串可表達的類型,這可能會導致錯誤。 搭配 XML 剖析器使用 HttpClient 的可靠方法是呼叫 TryGetBufferAsync 方法,並剖析 「 < ?xml > 」 元素的緩衝區。 然後使用指定的字元編碼 (「 < xmlversion=」1.0「 encoding=」UTF-8「? > 」,例如) 剖析 HTTP 回應本文。 針對其他文字格式,可以使用類似的方法,其中應用程式會掃描 HTTP 回應本文的初始部分,以判斷所使用的字元編碼方式。

適用於

另請參閱