Messaggio (servizi Web Windows)

Un messaggio è un oggetto che incapsula i dati trasmessi o ricevuti. La struttura di un messaggio è definita da SOAP e include un set di intestazioni e un corpo. Le intestazioni vengono sempre memorizzate nel buffer in memoria, ma il corpo viene letto e scritto con un'API di streaming.

Diagram showing a message with the header being buffered and the body being streamed.

I messaggi hanno un set di proprietà che possono essere usate per specificare impostazioni facoltative che controllano il comportamento di un messaggio e per fornire un modo per recuperare informazioni aggiuntive sui messaggi ricevuti,ad esempio le informazioni di sicurezza. Per un elenco completo delle proprietà dei messaggi, vedere WS_MESSAGE_PROPERTY_ID .

Un messaggio viene indirizzato a un indirizzo endpoint specifico.

Un WS_FAULT è un tipo speciale di contenuto del messaggio usato per rappresentare gli errori restituiti da un endpoint remoto.

I messaggi vengono sottoposti a codifica che trasforma il codice XML in un formato di collegamento lineare prima di essere trasmessi.

Per altre informazioni sui messaggi, vedere l'argomento Channel Layer Overview .For more information on messages, see the Channel Layer Overview topic.

Gli esempi seguenti illustrano l'uso dei messaggi in WWSAPI.

Esempio Descrizione
CustomHeaderExample Illustra l'uso di intestazioni di messaggio personalizzate.
MessageEncodingExample Illustra la codifica e la decodifica di un messaggio.
ForwardMessageExample Illustra l'inoltro di un messaggio.

 

Gli elementi API seguenti vengono usati con i messaggi.

Richiamata Descrizione
WS_MESSAGE_DONE_CALLBACK Notifica al chiamante che il messaggio ha completato l'uso della struttura WS_XML_READER fornita alla funzione WsReadEnvelopeStart o della struttura WS_XML_WRITER fornita alla funzione WsWriteEnvelopeStart.

 

Enumerazione Descrizione
WS_ADDRESSING_VERSION Versione della specifica utilizzata per le intestazioni di indirizzamento.
WS_ENVELOPE_VERSION Versione della specifica utilizzata per la struttura envelope.
WS_HEADER_ATTRIBUTES Set di flag che rappresentano gli attributi mustUnderstand SOAP e di inoltro di un'intestazione.
WS_HEADER_TYPE Tipo dell'intestazione.
WS_MESSAGE_INITIALIZATION Specifica le intestazioni da aggiungere a WsInitializeMessage.
WS_MESSAGE_PROPERTY_ID ID di ogni proprietà del messaggio.
WS_MESSAGE_STATE Stato del messaggio.

 

Funzione Descrizione
WsAddressMessage Assegna un indirizzo di destinazione a un messaggio.
WsCheckMustUnderstandHeaders Verifica che le intestazioni specificate siano state comprese in modo appropriato dal ricevitore.
WsCreateMessage Crea un'istanza di un oggetto WS_MESSAGE .
WsCreateMessageForChannel Crea un messaggio appropriato per l'uso con un canale specifico.
WsFillBody Assicura che sia disponibile un numero sufficiente di byte in un messaggio per la lettura.
WsFlushBody Scarica tutti i dati del corpo dei messaggi accumulati scritti.
WsFreeMessage Rilascia la risorsa di memoria associata a un messaggio.
WsGetCustomHeader Trova l'intestazione definita dall'applicazione del messaggio e la deserializza.
WsGetHeader Trova una particolare intestazione standard nel messaggio e la deserializza.
WsGetHeaderAttributes Popola un parametro ULONG con il WS_HEADER_ATTRIBUTES dall'elemento di intestazione in cui è posizionato il lettore.
WsGetMessageProperty Recupera una proprietà dell'oggetto Message specificata.
WsInitializeMessage Inizializza le intestazioni per il messaggio in preparazione per l'elaborazione.
WsMarkHeaderAsUnderstood Contrassegna un'intestazione come compresa dall'applicazione.
WsReadBody Deserializza un valore dal lettore XML del messaggio.
WsReadEnvelopeEnd Legge gli elementi di chiusura di un messaggio.
WsReadEnvelopeStart Legge le intestazioni del messaggio e prepara a leggere gli elementi del corpo.
WsRemoveCustomHeader Rimuove un'intestazione personalizzata dal messaggio.
WsRemoveHeader Rimuove l'oggetto WS_HEADER_TYPE standard da un messaggio.
WsResetMessage Imposta di nuovo lo stato del messaggio su WS_MESSAGE_STATE_EMPTY.
WsSetHeader Aggiunge o sostituisce l'intestazione standard specificata nel messaggio.
WsWriteBody Scrive un valore nel corpo di un messaggio.
WsWriteEnvelopeEnd Scrive gli elementi di chiusura di un messaggio.
WsWriteEnvelopeStart Scrive l'inizio del messaggio, incluso il set corrente di intestazioni del messaggio e prepara a scrivere gli elementi del corpo.

 

Handle Descrizione
WS_MESSAGE Tipo opaco utilizzato per fare riferimento a un oggetto messaggio.

 

Struttura Descrizione
WS_FAULT Valore di errore trasportato nel corpo di un messaggio che indica un errore di elaborazione.
WS_FAULT_CODE Rappresenta un codice di errore.
WS_FAULT_REASON Contiene una spiegazione dell'errore.
WS_MESSAGE_PROPERTIES Specifica un set di strutture WS_MESSAGE_PROPERTY.
WS_MESSAGE_PROPERTY Specifica un'impostazione specifica del messaggio.