WsGetHeader 函数 (webservices.h)
在消息中查找特定的标准标头并将其反序列化。
语法
HRESULT WsGetHeader(
[in] WS_MESSAGE *message,
[in] WS_HEADER_TYPE headerType,
[in] WS_TYPE valueType,
[in] WS_READ_OPTION readOption,
[in, optional] WS_HEAP *heap,
void *value,
[in] ULONG valueSize,
[in, optional] WS_ERROR *error
);
参数
[in] message
包含标头的消息。
消息可以处于任何状态,但 WS_MESSAGE_STATE_EMPTY。
[in] headerType
要反序列化的标头的类型。
[in] valueType
要反序列化的值的类型。 有关对应于每种类型的标头的类型集,请参阅 WS_HEADER_TYPE 。
[in] readOption
该值是否是必需的,以及如何分配值。 无法指定WS_READ_NILLABLE_VALUE 和 WS_READ_NILLABLE_POINTER 读取选项,因为 WS_HEADER_TYPE 中的标头类型在各自的标准规范中是不允许的。 有关详细信息 ,请参阅WS_READ_OPTION 。
[in, optional] heap
要存储反序列化标头数据的堆。 如果此值为 NULL,则将使用消息堆。
value
此参数的解释取决于 WS_READ_OPTION。
[in] valueSize
此参数的解释取决于 WS_READ_OPTION。
[in, optional] error
指定在函数失败时应存储其他错误信息的位置。
返回值
此函数可以返回其中一个值。
返回代码 | 说明 |
---|---|
|
标头不存在,是必需的。
消息中存在标头类型的多个实例。 输入数据的格式不是预期的。 |
|
超出了堆的大小配额。 |
|
没有足够的内存可用于反序列化标头。 |
|
一个或多个参数不正确。 |
|
此函数可能会返回上面未列出的其他错误。 |
注解
此 API 提供对一组标准标头类型的访问, (请参阅 WS_HEADER_TYPE) 。 对于应用程序定义的标头类型,请使用 WsGetCustomHeader。
此 API 设计为句柄类型的标头,这些标头在消息中出现一次,并针对最终接收方。 此 API 将忽略以最终接收方以外的角色/执行组件为目标的标头。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 7 [桌面应用 |UWP 应用] |
最低受支持的服务器 | Windows Server 2008 R2 [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | webservices.h |
Library | WebServices.lib |
DLL | WebServices.dll |