WS_DECODER_GET_CONTENT_TYPE_CALLBACK コールバック関数 (webservices.h)
メッセージのコンテンツ タイプを取得します。
構文
WS_DECODER_GET_CONTENT_TYPE_CALLBACK WsDecoderGetContentTypeCallback;
HRESULT WsDecoderGetContentTypeCallback(
[in] void *decoderContext,
[in] const WS_STRING *contentType,
[in, optional] const WS_STRING *contentEncoding,
[out] WS_STRING *newContentType,
[in, optional] WS_ERROR *error
)
{...}
パラメーター
[in] decoderContext
WS_CREATE_DECODER_CALLBACKによって返されるエンコーダー インスタンス。
[in] contentType
エンコードされたメッセージのコンテンツ タイプ。
[in, optional] contentEncoding
エンコードされたメッセージのコンテンツ エンコード。
[out] newContentType
コールバックは、ここで新しくデコードされたメッセージのコンテンツ タイプを返す必要があります。
[in, optional] error
関数が失敗した場合に追加のエラー情報を格納する場所を指定します。
戻り値
リターン コード | 説明 |
---|---|
|
メモリが不足しました。 |
|
1 つ以上の引数が無効です。 |
|
この関数は、上記以外のエラーを返す場合があります。 |
注釈
コールバックでは、指定されたコンテンツ タイプが予期した内容と一致することを確認し、デコードされたメッセージのコンテンツ タイプを返す必要があります。
返されるコンテンツ タイプは、次回コールバックが呼び出されるか、デコーダーが解放されるまで有効なままである必要があります。
コールバックでは、基になるチャネルでサポートされている newContentType を設定する必要があります。 たとえば、SOAP 1.2 とバイナリ エンコードを使用する TCP セッション チャネルでは、新しいコンテンツ タイプは常に application/soap+msbinsession1 である必要があります。
WS_HTTP_CHANNEL_BINDINGの場合、content encoding パラメーターは "Content-Encoding" HTTP ヘッダーの値に設定されます。 このヘッダーが存在しない場合は、 NULL が渡されます。
その他のすべてのチャネル バインドでは、コンテンツ エンコードに NULL が渡されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | webservices.h |