WsGetMappedHeader 函式 (webservices.h)
在訊息中尋找對應的標頭,並將其還原串行化。
語法
HRESULT WsGetMappedHeader(
[in] WS_MESSAGE *message,
[in] const WS_XML_STRING *headerName,
[in] WS_REPEATING_HEADER_OPTION repeatingOption,
[in] ULONG headerIndex,
[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] headerName
對應標頭的名稱。
[in] repeatingOption
標頭是否可以在訊息中出現一次以上。
如果使用 WS_REPEATING_HEADER ,則標頭索引會指出要傳回之具有指定 headerName 的標頭。
如果使用 WS_SINGLETON_HEADER ,則 headerIndex 必須為零。
[in] headerIndex
標頭集合內具有指定headerName之標頭的以零起始的索引。
[in] valueType
要還原串行化的實值型別。
[in] readOption
是否需要值,以及如何配置值。 如需詳細資訊 ,請參閱WS_READ_OPTION 。
如果標頭是選擇性的 (可能會) 出現零次或一次,則可以使用 WS_READ_OPTIONAL_POINTER 。
[in, optional] heap
要儲存還原串行化標頭數據的堆積。 如果這是 NULL,則會使用訊息堆積。
value
此參數的解譯取決於 WS_READ_OPTION。
[in] valueSize
此參數的解譯取決於 WS_READ_OPTION。
[in, optional] error
指定函式失敗時應儲存其他錯誤資訊的位置。
傳回值
此函式可以傳回下列其中一個值。
傳回碼 | Description |
---|---|
|
標頭不存在,而且是必要的。
輸入數據不是預期的格式。 已指定WS_SINGLETON_HEADER ,而且訊息中有多個標頭實例具有指定的名稱。 |
|
超過堆積的大小配額。 |
|
記憶體不足,無法還原串行化標頭。 |
|
一或多個參數不正確。 |
|
此函式可能會傳回上面未列出的其他錯誤。 |
備註
郵件可能包含不屬於郵件信封一部分的其他傳輸特定資訊。 這個傳輸特定資訊可以程序設計方式公開為 Message 對象的標頭。 此函式是用來讀取傳輸已對應至訊息的標頭。
使用 HTTP 通道時,必須先指定必要的對應,才能使用此函式擷取標頭。 如需詳細資訊,請參閱 WS_HTTP_MESSAGE_MAPPING。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 7 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | webservices.h |
程式庫 | WebServices.lib |
Dll | WebServices.dll |