SOAP HeaderElement


Das optionale SOAP-Header-Element enthält Header-Informationen.


SOAP-Header-Element

Das optionale SOAP-Header-Element kann anwendungsspezifische Informationen über die SOAP-Nachricht enthalten (wie Authentifizierung, Zahlung usw.).

Wenn das Header-Element angegeben wird, muss es das erste untergeordnete Element des Envelope-Elements sein.

Hinweis:Alle direkten untergeordneten Elemente des Header-Elements müssen namespace-qualifiziert sein.

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Header>
  <m:Trans xmlns:m="http://www.w3schools.com/transaction/"
  soap:mustUnderstand="1">234
  </m:Trans>
</soap:Header>
...
...
</soap:Envelope>

Das obige Beispiel enthält einen Header mit einem "Trans"-Element, dessen Wert 234 ist, und das "mustUnderstand"-Attribut dieses Elements hat den Wert "1".

SOAP definiert drei Attribute im Standard-Namespace ("http://www.w3.org/2001/12/soap-envelope").

Diese drei Attribute sind: actor, mustUnderstand und encodingStyle. Diese im SOAP-Header definierten Attribute können festlegen, wie ein Container die SOAP-Nachricht verarbeitet.


mustUnderstand-Attribut

Das mustUnderstand-Attribut von SOAP kann verwendet werden, um festzustellen, ob ein Header-Eintrag für den Empfänger, der ihn verarbeitet, obligatorisch oder optional ist.

Wenn Sie "mustUnderstand="1"" zu einem untergeordneten Element des Header-Elements hinzufügen, zeigt dies an, dass der Empfänger, der diesen Header verarbeitet, dieses Element bestätigen muss. Wenn der Empfänger dieses Element nicht bestätigen kann, muss er bei der Verarbeitung dieses Headers fehlschlagen.

Syntax

soap:mustUnderstand="0|1"

Beispiel

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Header>
  <m:Trans xmlns:m="http://www.w3schools.com/transaction/"
  soap:mustUnderstand="1">234
  </m:Trans>
</soap:Header>
...
...
</soap:Envelope>


actor-Attribut

Indem eine SOAP-Nachricht den Nachrichtenpfad durch verschiedene Endpunkte durchläuft, kann sie sich von einem Sender zu einem Empfänger fortpflanzen. Nicht alle Teile einer SOAP-Nachricht sind für den endgültigen Endpunkt der SOAP-Nachricht bestimmt, aber andererseits können sie für einen oder mehrere Endpunkte auf dem Nachrichtenpfad bestimmt sein.

Das actor-Attribut von SOAP kann verwendet werden, um ein Header-Element an einen bestimmten Endpunkt zu adressieren.

Syntax

soap:actor="URI"

Beispiel

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Header>
  <m:Trans xmlns:m="http://www.w3schools.com/transaction/"
  soap:actor="http://www.w3schools.com/appml/">234
  </m:Trans>
</soap:Header>
...
...
</soap:Envelope>


encodingStyle-Attribut

Das encodingStyle-Attribut von SOAP wird verwendet, um die im Dokument verwendeten Datentypen zu definieren. Dieses Attribut kann in jedem SOAP-Element auftreten, und es wird auf den Inhalt des Elements und alle untergeordneten Elemente des Elements angewendet.

SOAP-Nachrichten haben keine Standardkodierungsmethode.

Syntax

soap:encodingStyle="URI"

Andere Erweiterungen