次の方法で共有


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 応答からのデータの処理を開始できます。 ただし、このコールバック関数が返されるまで、要求の受信は中断されます。 さらに、このコールバックは、1 つの要求中に複数回呼び出すことができます。

このコールバック関数は、UI の更新などのリソースを大量に消費する操作を実行するためにブロックする必要があります。また、行うべきではありません。

カスタム ストリームは、OnDataAvailable が発生する前に ISequentialStream::Write の呼び出しを受け取ります。 クライアントは、カスタム ストリームで ISequentialStream::Read を呼び出す代わりに Write 呼び出しから直接データを処理でき、書き込み呼び出しに依存して新しいデータが使用可能であることを示すことができます。

要件

要件
サポートされている最小のクライアント Windows 8 [デスクトップ アプリ |UWP アプリ],MSXML 6.0 以降
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー msxml6.h

こちらもご覧ください

ISequentialStream インターフェイス

IXMLHTTPRequest2Callback