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 |