Elemento SOAP Header

Los elementos de cabecera de SOAP opcionales contienen información de encabezado.

Elemento SOAP Header

Los elementos de cabecera de SOAP opcionales pueden contener información específica de la aplicación del mensaje SOAP (como autenticación, pago, etc.). Si se proporciona un elemento de cabecera, debe ser el primer elemento hijo del elemento Envelope.

Notas:Todos los elementos directos hijos de los elementos Header deben estar en un espacio de nombres válido.

<?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.codew3c.com/transaction/"
soap:mustUnderstand="1">234</m:Trans>
</soap:Header>
...
...
</soap:Envelope>

El ejemplo anterior contiene una cabecera con un elemento "Trans" que tiene un valor de 234, y el valor de la propiedad "mustUnderstand" de este elemento es "1".

SOAP define tres propiedades en el espacio de nombres predeterminado ("http://www.w3.org/2001/12/soap-envelope"): actor, mustUnderstand y encodingStyle. Estas propiedades definidas en la cabecera SOAP pueden definir cómo el contenedor maneja el mensaje SOAP.

propiedad actor

A través de la propagación de mensajes a lo largo de la ruta del mensaje a través de diferentes puntos finales, los mensajes SOAP pueden propagarse desde un remitente a un destinatario. No todas las partes del mensaje SOAP están destinadas a ser enviadas al punto final final del mensaje SOAP, por otro lado, tal vez estén destinadas a ser enviadas a uno o más puntos finales en la ruta del mensaje.

La propiedad actor de SOAP se puede utilizar para dirigir el elemento Header a un punto final específico.

Sintaxis

soap:actor="URI"

Ejemplo

<?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.codew3c.com/transaction/"
soap:actor="http://www.codew3c.com/appml/">
234
</m:Trans>
</soap:Header>
...
...
</soap:Envelope>

Propiedad mustUnderstand

La propiedad mustUnderstand de SOAP se puede usar para identificar si un elemento de encabezado es obligatorio o opcional para el receptor que lo procesa.

Si agregas "mustUnderstand="1" a algún subelemento del elemento Header, puede indicar al receptor que debe reconocer este elemento. Si este receptor no puede reconocer este elemento, debe anularlo durante el procesamiento del encabezado.

Sintaxis

soap:mustUnderstand="0|1"

Ejemplo

<?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.codew3c.com/transaction/"
soap:mustUnderstand="1">
234
</m:Trans>
</soap:Header>
...
...
</soap:Envelope>

Propiedad encodingStyle

La propiedad encodingStyle de SOAP se explicó en el capítulo anterior.