(webservices.h) WS_DECODER_GET_CONTENT_TYPE_CALLBACK 回调函数

获取消息的内容类型。

语法

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

指定函数失败时应存储其他错误信息的位置。

返回值

返回代码 说明
E_OUTOFMEMORY
内存不足。
E_INVALIDARG
一个或多个参数无效。
其他错误
此函数可能会返回上面未列出的其他错误。

注解

回调应验证提供的内容类型是否与预期匹配,然后应返回解码消息的内容类型。

在下次调用回调或释放解码器之前,返回的内容类型必须保持有效。

回调必须将 newContentType 设置为基础通道支持的类型。 例如,对于使用 SOAP 1.2 和二进制编码的 TCP 会话通道,新内容类型应始终为 application/soap+msbinsession1。

对于 WS_HTTP_CHANNEL_BINDING 内容编码参数将设置为“Content-Encoding”HTTP 标头的值。 如果此标头不存在,则将传递 NULL

对于所有其他通道绑定,将为内容编码传递 NULL

要求

要求
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 webservices.h