共用方式為


訊息 (Windows Web 服務)

訊息是封裝傳輸或接收之數據的物件。 訊息的結構是由 SOAP 所定義,並包含一組標頭和本文。 標頭一律會緩衝處理於記憶體中,但本文是以串流 API 讀取和寫入。

圖表顯示已緩衝標頭和正在串流主體的訊息。

訊息有一組屬性,可用來指定可控制訊息行為的選擇性設定,並提供方法來擷取所接收訊息的其他資訊(例如安全性資訊)。 如需訊息屬性的完整清單,請參閱 WS_MESSAGE_PROPERTY_ID

訊息會尋址至特定 端點位址

WS_FAULT 是一種特殊的訊息內容,用來代表從遠端端端點傳回的失敗。

訊息會進行編碼,在傳輸之前,將 XML 轉換成線性線格式。

如需訊息的詳細資訊,請參閱 通道層概觀 主題。

下列範例說明如何在WWSAPI中使用訊息。

描述
CustomHeaderExample 說明如何使用自定義訊息標頭。
MessageEncodingExample 說明編碼和譯碼訊息。
ForwardMessageExample 說明轉送訊息。

 

下列 API 元素會與訊息搭配使用。

回調 描述
WS_MESSAGE_DONE_CALLBACK 通知呼叫端訊息已完成使用提供給 WsReadEnvelopeStart 函式的WS_XML_READER結構,或提供給 WsWriteEnvelopeStart 函式的WS_XML_WRITER結構。

 

列舉 描述
WS_ADDRESSING_VERSION 用於尋址標頭的規格版本。
WS_ENVELOPE_VERSION 用於信封結構的規格版本。
WS_HEADER_ATTRIBUTES 一組旗標,表示標頭的SOAP mustUnderstand和轉送屬性。
WS_HEADER_TYPE 標頭的類型。
WS_MESSAGE_INITIALIZATION 指定 WsInitializeMessage 應該新增至訊息的標頭。
WS_MESSAGE_PROPERTY_ID 每個訊息屬性的識別碼。
WS_MESSAGE_STATE 訊息的狀態。

 

功能 描述
WsAddressMessage 將目的地位址指派給訊息。
WsCheckMustUnderstandHeaders 確認接收者已適當瞭解指定的標頭。
WsCreateMessage 建立 WS_MESSAGE 對象的實例。
WsCreateMessageForChannel 建立適合與特定通道搭配使用的訊息。
WsFillBody 確保訊息中有足夠的位元組可供讀取。
WsFlushBody 排清所有已寫入的累積訊息本文數據。
WsFreeMessage 釋放與訊息相關聯的記憶體資源。
WsGetCustomHeader 尋找訊息的應用程式定義標頭,並將其還原串行化。
WsGetHeader 在訊息中尋找特定的標準標頭,並將其還原串行化。
WsGetHeaderAttributes 使用讀取器所在的標頭專案 WS_HEADER_ATTRIBUTES 填入 ULONG 參數。
WsGetMessageProperty 擷取指定的 Message 物件屬性。
WsInitializeMessage 初始化訊息的標頭,以準備處理。
WsMarkHeaderAsUnderstood 將標頭標示為應用程式所瞭解。
WsReadBody 從訊息的 XML 讀取器還原串行化值。
WsReadEnvelopeEnd 讀取訊息的結尾專案。
WsReadEnvelopeStart 讀取訊息的標頭,並準備讀取本文專案。
WsRemoveCustomHeader 從訊息中移除自定義標頭。
WsRemoveHeader 從訊息中移除標準 WS_HEADER_TYPE 物件。
WsResetMessage 將訊息狀態設定回 WS_MESSAGE_STATE_EMPTY
WsSetHeader 在訊息中加入或取代指定的標準標頭。
WsWriteBody 在訊息本文中寫入值。
WsWriteEnvelopeEnd 寫入訊息的結尾專案。
WsWriteEnvelopeStart 寫入訊息的開頭,包括訊息的目前標頭集,並準備寫入本文專案。

 

處理 描述
WS_MESSAGE 用來參考訊息物件的不透明型別。

 

結構 描述
WS_FAULT 訊息本文中攜帶的錯誤值,表示處理失敗。
WS_FAULT_CODE 表示錯誤碼。
WS_FAULT_REASON 包含錯誤的說明。
WS_MESSAGE_PROPERTIES 指定一組 WS_MESSAGE_PROPERTY 結構。
WS_MESSAGE_PROPERTY 指定訊息特定設定。