Web Servis

SOAP (Simple Object Access Protocol)

SOAP “Simple Object Access Protocol” ün kısaltmasıdır. Kısaca SOAP, internet üzerinden XML tabanlı, platform bağımsız, bir haberleşme protoküdür.

SOAP Mesaj Formatı

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

<soap:Header>
</soap:Header>

<soap:Body>

  <-- Fault kullanımı isteğe bağlıdır,
     web serviste bir hata olursa kullanılır..
  -->
  <soap:Fault>
  </soap:Fault>

</soap:Body>

</soap:Envelope>

SOAP Envelope

Envelope, SOAP mesajının root elemanıdır. Envelope içerisinde header (isteğe bağlı) ve body elemanları bulunur.

<?xml version="1.0"?>
<env:Envelope  xmlns:env="http://www.w3.org/2002/06/soap-envelope" >

<env:Header>
</env:Header>

<env:Body>
</env:Body>

</env:Envelope>

env elemanı içerisindeki

xmlns:env="http://www.w3.org/2002/06/soap-envelope"

değerin olması gerekiyor, aksi takdirde web servisiniz çalışmayacaktır.

SOAP Header

SOAP Header elementi, isteğe bağlı olarak kullanılır ve Envelope elemanının içerisinde bululur. Header’ın içerisinde Body ile alakalı olmayan bilgiler koyulabilir. Bu tamamen web servisin kullanılacağı yer ile alakalı.

Attributes

Header içerisinde kullanabileceğimiz 4 adet standart attribute (özellik) bulunur.

  • mustUnderstand
  • encodingStyle
  • role
  • relay

SOAP Body

Web servis yada client tarafından process edilecek olan SOAP mesajının ana kısımdır. SOAP Headerdan farklı olarak SOAP Body isteğe bağlı değil, zorunludur.

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

  <env:Body>

    <jj:operation name="setName"
        xmlns:jj="https://kod5.org/operation" />

    <jj:param name="userId" value="00009"
        xmlns:jj="https://kod5.org/params" />

    <jj:param name="firstName" value="Muhammed"
        xmlns:jj="https://kod5.org/params" />

    <jj:param name="lastName"  value="Ozdemir"
        xmlns:jj="https://kod5.org/params" />

  </env:Body>

</env:Envelope>

SOAP Fault, SOAP Roles, SOAP Exchange Message Patterns yakında sizlerle.

 

Yorum Yap