SOAP Header Elemanı

Opsiyonel SOAP Header bileşeni, başlık bilgilerini içerir.

SOAP Header Elemanı

Opsiyonel SOAP Header bileşeni, SOAP mesajı hakkında uygulama özel bilgiler (örneğin, kimlik doğrulama, ödeme vb.) içerebilir. Header bileşeni sağlanırsa, bu, Envelope bileşeninin ilk alt bileşeni olmalıdır.

Açıklama:Tüm Header bileşenlerinin doğrudan alt bileşenleri uygun ad alanlarına sahip olmalıdır.

<?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>

Yukarıdaki örnekte, "Trans" adlı bir bileşen içeren bir başlık var, bu bileşenin değeri 234, "mustUnderstand" özelliğinin değeri "1"dir.

SOAP, varsayılan ad alanında ("http://www.w3.org/2001/12/soap-envelope") üç özellik tanımlar. Bu üç özellik: actor, mustUnderstand ve encodingStyle'dir. Bu tanımlanan özellikler, SOAP başlığının nasıl işlendiğini tanımlar.

actor özelliği

Mesaj yolunu takip ederek farklı düğümlerden geçen SOAP mesajları, bir gönderici'den bir alıcı'ya ulaştırılabilir. SOAP mesajlarının tüm bileşenlerinin SOAP mesajının son düğümüne gönderilmesi planlanmamış olabilir, ancak diğer bir yandan, mesaj yolundaki bir veya birkaç düğüme gönderilmesi planlanmış olabilir.

SOAP'un actor özelliği, Header bileşenini belirli bir düğümü adreslemek için kullanılabilir.

Gramer

soap:actor="URI"

Örnek

<?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>

mustUnderstand Özelliği

SOAP'ın mustUnderstand özelliği, başlık maddelerinin işleyen alıcılara zorunlu mu yoksa seçmeli mi olduğunu belirlemek için kullanılabilir.

Header elemanının bir alt elemanına "mustUnderstand="1" eklediğinizde, bu elemanın işleyen alıcının onayını gerektirdiğini belirtir. Bu alıcı bu elemanı onaylayamadığında, başlık işlenirken geçersiz hale getirilmelidir.

Gramer

soap:mustUnderstand="0|1"

Örnek

<?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>

encodingStyle Özelliği

SOAP'ın encodingStyle özelliği bir önceki bölümdede açıklanmıştır.