WS_HTTP_MESSAGE_MAPPING結構 (webservices.h)
指定如何在訊息物件中表示 HTTP 要求或回應的相關資訊。
語法
typedef struct _WS_HTTP_MESSAGE_MAPPING {
ULONG requestMappingOptions;
ULONG responseMappingOptions;
WS_HTTP_HEADER_MAPPING **requestHeaderMappings;
ULONG requestHeaderMappingCount;
WS_HTTP_HEADER_MAPPING **responseHeaderMappings;
ULONG responseHeaderMappingCount;
} WS_HTTP_MESSAGE_MAPPING;
成員
requestMappingOptions
控制 HTTP 要求中資訊如何對應至訊息物件的選項。
responseMappingOptions
控制 HTTP 回應中資訊如何對應至訊息物件的選項。
requestHeaderMappings
對應之指標陣列,描述 HTTP 要求之訊息物件中哪些 HTTP 標頭對應至/從標頭。 陣列中的指標可能不是 Null。
requestHeaderMappingCount
requestHeaderMappings 陣列中的專案數。
responseHeaderMappings
對應之指標的陣列,描述 HTTP 回應之訊息物件中哪些 HTTP 標頭會對應至/從標頭。 陣列中的指標可能不是 Null。
responseHeaderMappingCount
responseHeaderMappings 陣列中的專案數。
備註
郵件可能包含不屬於郵件信封一部分的其他傳輸特定資訊。 此傳輸特定資訊可以程式設計方式公開為訊息物件的標頭。
這些標頭稱為對應標頭。
每個對應的標頭都會儲存為訊息標頭中的一般標頭元素, (請參閱 WS_MESSAGE_PROPERTY_HEADER_BUFFER) 。 空的 XML 命名空間 (「」) 用於對應的標頭。
這個結構會指定 HTTP 要求或回應與訊息物件的對應標頭之間的對應方式。 您可以使用 WS_CHANNEL_PROPERTY_HTTP_MESSAGE_MAPPING 屬性來 指定 結構。
下圖顯示 HTTP 標頭如何對應至訊息的標頭。
收到訊息時,HTTP 通道會自動將指定的 HTTP 標頭從要求或回應複製到訊息物件的標頭。 然後,應用程式可以使用 WsGetMappedHeader 來取得對應標頭的值。
傳送訊息之前,應用程式可以使用 WsAddMappedHeader將對應的標頭新增至訊息物件。 傳送訊息時,HTTP 通道會自動從訊息物件的標頭中移除指定的標頭, (因此不會出現在信封內) ,並將它們新增為 HTTP 要求或回應標頭。
HTTP 通道只會針對 requestHeaderMappings 或 responseHeaderMappings 欄位中指定的 HTTP 標頭執行此對應。 WS_HTTP_HEADER_MAPPING可用來指定每個標頭,並包含訊息標頭如何轉換至 HTTP 標頭或從 HTTP 標頭轉換的指示。
HTTP 要求或回應中未對應至 HTTP 標頭的其他資訊可以藉由設定 requestMappingOptions 或 responseMappingOptions,對應至訊息物件的標頭。 然後可以使用 WsGetMappedHeader來擷取這些對應的值。
如需哪些資訊可以對應至訊息標頭的資訊,請參閱 WS_HTTP_REQUEST_MAPPING_OPTIONS 或 WS_HTTP_RESPONSE_MAPPING_OPTIONS 。
規格需求
最低支援的用戶端 | Windows 7 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [僅限桌面應用程式] |
標頭 | webservices.h |