Freigeben über


Nachricht (Windows-Webdienste)

Eine Nachricht ist ein Objekt, das Daten kapselt, die übertragen oder empfangen werden. Die Struktur einer Nachricht wird durch SOAP definiert und enthält eine Reihe von Kopfzeilen und einen Textkörper. Die Header werden immer im Arbeitsspeicher gepuffert, aber der Textkörper wird mit einer Streaming-API gelesen und geschrieben.

Diagramm, in dem eine Meldung mit dem gepufferten Header und dem gestreamten Text angezeigt wird.

Nachrichten verfügen über eine Reihe von Eigenschaften, die verwendet werden können, um optionale Einstellungen anzugeben, die das Verhalten einer Nachricht steuern und eine Möglichkeit zum Abrufen zusätzlicher Informationen zu empfangenen Nachrichten (z. B. Sicherheitsinformationen) bereitstellen können. Eine vollständige Liste der Nachrichteneigenschaften finden Sie unter WS_MESSAGE_PROPERTY_ID.

Eine Nachricht wird an eine bestimmte Endpunktadresseadressiert.

Eine WS_FAULT ist eine spezielle Art von Nachrichteninhalt, die verwendet wird, um Fehler darzustellen, die von einem Remoteendpunkt zurückgegeben werden.

Nachrichten durchlaufen eine Codierung, die den XML-Code in ein lineares Drahtformat transformiert, bevor sie übertragen werden.

Weitere Informationen zu Nachrichten finden Sie im Thema Channel Layer Overview.

Die folgenden Beispiele veranschaulichen die Verwendung von Nachrichten in WWSAPI.

Beispiel Beschreibung
CustomHeaderExample- Veranschaulicht die Verwendung von benutzerdefinierten Nachrichtenkopfzeilen.
MessageEncodingExample Veranschaulicht die Codierung und Decodierung einer Nachricht.
ForwardMessageExample- Veranschaulicht das Weiterleiten einer Nachricht.

 

Die folgenden API-Elemente werden mit Nachrichten verwendet.

Rückruf Beschreibung
WS_MESSAGE_DONE_CALLBACK Benachrichtigt den Aufrufer, dass die Nachricht die Verwendung der WS_XML_READER Struktur abgeschlossen hat, die für die WsReadEnvelopeStart-Funktion bereitgestellt wurde, oder die WS_XML_WRITER Struktur, die für die WsWriteEnvelopeStart-Funktion bereitgestellt wurde.

 

Aufzählung Beschreibung
WS_ADDRESSING_VERSION Die Version der Spezifikation, die für die Adressierungsheader verwendet wird.
WS_ENVELOPE_VERSION Die Version der Spezifikation, die für die Umschlagstruktur verwendet wird.
WS_HEADER_ATTRIBUTES Eine Reihe von Flags, die soap-MustUnderstand- und Relayattribute eines Headers darstellen.
WS_HEADER_TYPE Der Typ der Kopfzeile.
WS_MESSAGE_INITIALIZATION Gibt an, welche Kopfzeilen die WsInitializeMessage- der Nachricht hinzufügen soll.
WS_MESSAGE_PROPERTY_ID Die ID jeder Nachrichteneigenschaft.
WS_MESSAGE_STATE Der Status der Nachricht.

 

Funktion Beschreibung
WsAddressMessage- Weist einer Nachricht eine Zieladresse zu.
WsCheckMustUnderstandHeaders Überprüft, ob angegebene Kopfzeilen vom Empfänger entsprechend verstanden wurden.
WsCreateMessage- Erstellt eine Instanz eines WS_MESSAGE-Objekts.
WsCreateMessageForChannel Erstellt eine Nachricht, die für die Verwendung mit einem bestimmten Kanal geeignet ist.
WsFillBody Stellt sicher, dass eine ausreichende Anzahl von Bytes in einer Nachricht zum Lesen verfügbar ist.
WsFlushBody Löscht alle gesammelten Nachrichtentextdaten, die geschrieben wurden.
WsFreeMessage- Gibt die Speicherressource frei, die einer Nachricht zugeordnet ist.
WsGetCustomHeader Sucht die anwendungsdefinierte Kopfzeile der Nachricht und deserialisiert sie.
WsGetHeader- Sucht einen bestimmten Standardkopf in der Nachricht und deserialisiert ihn.
WsGetHeaderAttributes Füllt einen ULONG-Parameter mit dem WS_HEADER_ATTRIBUTES aus dem Kopfzeilenelement auf, auf dem der Leser positioniert ist.
WsGetMessageProperty- Ruft eine angegebene Message -Objekteigenschaft ab.
WsInitializeMessage- Initialisiert die Kopfzeilen für die Nachricht in Vorbereitung auf die Verarbeitung.
WsMarkHeaderAsUnderstood- Kennzeichnet eine Kopfzeile wie von der Anwendung verstanden.
WsReadBody- Deserialisiert einen Wert aus dem XML-Reader der Nachricht.
WsReadEnvelopeEnd Liest die schließende Elemente einer Nachricht.
WsReadEnvelopeStart- Liest die Kopfzeilen der Nachricht und bereitet sie vor, die Textkörperelemente zu lesen.
WsRemoveCustomHeader Entfernt eine benutzerdefinierte Kopfzeile aus der Nachricht.
WsRemoveHeader Entfernt das Standardobjekt WS_HEADER_TYPE aus einer Nachricht.
WsResetMessage- Legt den Status "Nachricht" auf WS_MESSAGE_STATE_EMPTYzurück.
WsSetHeader- Fügt die angegebene Standardkopfzeile in der Nachricht hinzu oder ersetzt sie.
WsWriteBody Schreibt einen Wert im Textkörper einer Nachricht.
WsWriteEnvelopeEnd- Schreibt die schließende Elemente einer Nachricht.
WsWriteEnvelopeStart- Schreibt den Anfang der Nachricht, einschließlich der aktuellen Kopfzeilen der Nachricht und bereitet sich darauf vor, die Textkörperelemente zu schreiben.

 

Griff Beschreibung
WS_MESSAGE Der undurchsichtige Typ, der verwendet wird, um auf ein Nachrichtenobjekt zu verweisen.

 

Struktur Beschreibung
WS_FAULT Ein Fehlerwert im Textkörper einer Nachricht, der einen Verarbeitungsfehler angibt.
WS_FAULT_CODE Stellt einen Fehlercode dar.
WS_FAULT_REASON Enthält eine Erläuterung des Fehlers.
WS_MESSAGE_PROPERTIES Gibt einen Satz von WS_MESSAGE_PROPERTY Strukturen an.
WS_MESSAGE_PROPERTY Gibt eine nachrichtenspezifische Einstellung an.