HttpClient.GetBufferAsync(Uri) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將 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)
參數
傳回
表示非同步作業的 物件。
- 屬性
備註
下載小型影像和壓縮檔等二進位內容時,通常會呼叫這個方法。 應該使用 HttpClient.GetInputStreamAsync 將非常大型的二進位內容下載為數據流,以防止不必要的緩衝處理。
這項作業不會封鎖。 傳回的 IAsyncOperationWithProgress (IBuffer 和 HttpProgress) 會在讀取整個回應本文之後完成。
HttpClient類別通常由應用程式用來下載並剖析文字。 HTTP 伺服器在 Content-Type 標頭中指定的字元編碼可能不符合 HTTP 回應本文的字元編碼, (XML 檔中的 XML 編碼,例如) 。 搭配文字使用 HttpClient 的其中一種方式是呼叫 GetStringAsync 方法,並將傳回的字串傳遞至文字剖析器。 不過,如果 Content-Type 不是字串可表達的類型,這可能會導致錯誤。 搭配 XML 剖析器使用 HttpClient 的可靠方式是呼叫 GetBufferAsync 方法,並剖析 「 < ?xml > 」 專案的緩衝區。 然後使用指定的字元編碼 (「 < xmlversion=」1.0「 encoding=」UTF-8「? > 」,例如) 剖析 HTTP 回應本文。 針對其他文字格式,可以使用類似的方法,其中應用程式會掃描 HTTP 回應本文的初始部分,以判斷所使用的字元編碼方式。
以下是此函式擲回的例外狀況。
E_INVALIDARG
uri參數是 Visual Basic) 中 Nothing的Null參考 (。