共用方式為


IXMLHTTPRequest2Callback::OnDataAvailable 方法 (msxml6.h)

發生於客戶端從伺服器接收 HTTP 回應數據的一部分時。

語法

HRESULT OnDataAvailable(
  [in, optional] IXMLHTTPRequest2  *pXHR,
  [in, optional] ISequentialStream *pResponseStream
);

參數

[in, optional] pXHR

初始 HTTP 要求。

[in, optional] pResponseStream

正在接收的回應數據流。 用戶端可以呼叫 ISequentialStream::Read 開始處理數據,也可以等到收到完整響應為止。 此回應數據流會包裝在數據流同步處理物件中,以防止並行讀取和寫入作業,因此應用程式不需要實作自定義同步處理。

傳回值

傳回成功時的 S_OK

注意 這個回呼函式不得擲回例外狀況。
 

備註

當此回呼函式傳回應用程式時,可以開始處理來自 HTTP 回應的數據,即使尚未收到整個回應也一樣。 不過,要求接收會暫停,直到此回呼函式傳回為止。 此外,這個回呼可以在單一要求期間多次叫用。

此回呼函式不得封鎖,且不應該執行大量資源作業,例如UI更新。

引發 OnDataAvailable 之前,自定義數據流會收到 ISequentialStream::Write 的呼叫。 用戶端可以直接從 Write 呼叫處理數據,而不是在自定義數據流上呼叫 ISequentialStream::Read ,而且可以依賴寫入呼叫來指出有新的數據可用。

規格需求

需求
最低支援的用戶端 Windows 8 [傳統型應用程式 |UWP 應用程式],MSXML 6.0 和更新版本
最低支援的伺服器 Windows Server 2012 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 msxml6.h

另請參閱

ISequentialStream 介面

IXMLHTTPRequest2Callback