Showing posts with label web service. Show all posts
Showing posts with label web service. Show all posts

SOAP (Simple Object Acces Protocol)



SOAP (Simple Object Acces Protocol) adalah sebuah XML-based markup language yang digunakan sebagai media pertukaran pesan antar aplikasi. SOAP juga sering disebut dengan istilah amplop pertukaran data. SOAP merupakan gabungan antara HTTP dengan XML, protocol HTTP digunakan sebagai sarana komunikasi, sementara pertukaran data ditulis dalam format XML.Kode struktur XML pesan SOAP dapat dilihat pada kode program dibawah ini.




Transformasi pesan SOAP terdiri dari tiga bagian. Gambar dibawah adalah penggambaran transformasi pesan SOAP.
 


Penjelasan gambar di atas adalah sebagai berikut:
1.    SOAP Sender: menciptakan dan mengirimkan pesan ke SOAP Receiver.
2.    SOAP Intermediary: menyaring pesan yang dikirim oleh SOAP Sender.
3.    SOAP Receiver: menerima pesan yang telah disaring oleh SOAP Intermediary.
Salah satu implementasi SOAP adalah NuSoap.

Tutorial NuSOAP Web Service pada PHP



NuSOAP adalah sekumpulan class PHP yang memungkinkan pengguna dapat mengirim dan menerima pesan SOAP melalui protokol HTTP. Class-class yang ada pada NuSOAP dapat dilihat pada tabel dibawah ini.
Tabel  Class-class NuSOAP.


No
Nama Class
Keterangan
1
class.soap_client
Kumpulan class client untuk berinteraksi dengan class server
2
class.soap_server
Kumpulan class server untuk berinteraksi dengan class client
3
class.soap_parser
Digunakan untuk memarsing pesan SOAP response yang diterima.
4
class.soap_transport_http
Digunakann untuk mengirim pesan SOAP request dan menerima pesan SOAP response.
5
class.wsdl
Menyediakan method-method untuk mengekstrak data per-operasi dan per-binding.
6
nusoap
Library nusoap atau kumpulan class.
7
class.nusoap_base
Memperbaiki kode yang menimpa atribut yang disediakan pengguna.
8
class.soap_fault
Digunakan untuk mengembalikan kesalahan pada fungsi yang dikerahkan pada server.
9
class.soap_val
Untuk menciptakan abstraksi serializable jenis PHP asli.
10
class.wsdlcache

11
class.xmlschema


Berikut beberapa contoh penulisan kode dalam NuSOAP:
1.        Menambah client baru
NuSOAP memnungkinkan seorang pengguna menambah client baru dengan mudah. Kode menambah client baru dapat dilihat pada kode program dibawah

Kode program  Menambah client baru pada NuSOAP.
1. <?php
2.  $server = new soap_server();
3.  $server->register('apakabar');
4. ?>

2.        Mengirim pesan
Sebelum mengirim pesan perlu dibuat sebuah fungsi yang digunakan untuk melakukan pengiriman data dari client ke server. Kode untuk mengirim pesan dapat dilihat pada kode program dibawah

Kode program  Kirim pesan SOAP.
1.   <?php
2.    function apakabar($param){
3.     $return_value = "Apa Kabar $param";
4.     return $return_value;
5.    }
6.    $HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA)?
7.    $HTTP_RAW_POST_DATA : '';
8.    $server->service($HTTP_RAW_POST_DATA);
9.   ?>

3.        Menerima pesan
Jika pesan SOAP telah dikirim maka untuk menerima pesan tersebut SOAP server harus menangkapnya. Kode untuk menerima pesan dapat dilihat pada kode program dibawah

Kode program Menerima pesan SOAP.
1.   <?php
2.    require_once('nusoap.php');
3.    $client = new soapclient('http://localhost/soap/Server.php');
4.    $param="Tri Susanta";
5.    $result = $client->call('Assalamu'alaikum',array($param));
6.   ?>


   (Kutipan dari Skripsi Sistem Informasi Akademik Pesantren /uad /Tri Susanta)