Membangun Web Service menggunakan PHP dengan metode SOAP
Halo semua..!
Setelah sekian lama blogku berisi berita-berita seputar penulis, sekarang aku ingin mencoba membahas sebuah teknologi internet yang sekarang sedang marak digunakan, yaitu teknologi web service. Sebenarnya teknologi web service itu apa seh? Begini ceritanya, web service adalah sebuah sistem yang dirancang untuk dapat mendukung interaksi komunikasi antar mesin-mesin pada suatu jaringan (w3c.org). Teknologi web service memungkinkan kita dapat menghubungkan berbagai jenis software yang memiliki platform dan sistem operasi yang berbeda. Jadi, kita tetap mendapatkan sebuah potongan informasi dari suatu website tanpa harus mengunjungi website tersebut, cukup dengan mengetahui fungsi/method web service yang disediakan oleh web itu. Kita dapat mengakses potongan informasi itu dengan meletakkan fungsi/method itu pada aplikasi kita. Contoh penggunaan dari teknologi web service adalah pada mesin pencarian Google yang menyediakan tiga metode pada web API-nya, yaitu :
doGoogleSearch() – mencari terminologi spesifik di database Google.
doGetCatchPage() – mengambil sebuah cache page dari cache Google.
doSpellingSuggestion() – mengambil anjuran ejaan dari Google.
Simple Object Access Protocol (SOAP)
Konsep Dasar SOAP
SOAP singkatan dari Simple Object Access Protocol. SOAP adalah protokol untuk pertukaran informasi dengan desentralisasi dan terdistribusi. SOAP dibangun dengan menggunakan protokol komunikasi HTTP. Karena HTTP didukung oleh semua browser dan server, maka SOAP dapat berkomunikasi dengan berbagai aplikasi meskipun terdapat perbedaan sistem operasi, teknologi, dan bahasa pemrogramannya.
Peran SOAP di dalam teknologi web service adalah sebagai protokol pemaketan untuk pesan-pesan (messages) yang digunakan secara bersama oleh aplikasi-aplikasi penggunanya. Spesifikasi yang digunakan tidak lebih seperti sebuah amplop biasa berbasis XML untuk informasi yang ditransfer, serta sekumpulan aturan bagi translasi aplikasi dan tipe-tipe data platform yang spesifik menjadi bentuk XML. Desain bentuk dari SOAP membuatnya cocok untuk berbagai pertukaran pesan pada aplikasi.
Pesan SOAP
Sebuah pesan SOAP adalah sebuah dokumen XML yang berisi elemen-elemen berikut:
- Envelope element yang mengidentifikasi dokumen XML sebagai sebuah pesan SOAP.
- Elemen header yang berisi informasi header. Elemen ini bersifat opsional.
- Elemen body yang berisi panggilan dan merespon informasi.
- Fault element yang berisi pesan kesalahan yang terjadi pada waktu proses. Elemen ini opsional.
Berikut struktur utama pesan SOAP:
NuSOAP
NuSOAP adalah library yang digunakan untuk membangun web service berbasis SOAP yang ditulis dengan menggunakan bahasa PHP. NuSOAP ditulis oleh Dietrich Ayala dengan proyek awal bernama SOAPx4. Selanjutnya dia disewa NuSphere untuk terus mengembangkan proyek tersebut dan diberi nama NuSOAP.
Dalam membangun sebuah sistem aplikasi berbasis web service, dibutuhkan dua komponen utama yaitu, server sebagai provider entity dan client sebagai requester entity . Sebagai contoh, di bawah ini terdapat dua listing program pada sisi server dan sisi client. Berikut contoh implementasi NuSOAP pada sisi server:
Kode Program File server.php
<?php
require_once(‘nusoap.php’);
$server = new soap_server;
$server->register(‘hello’);
function hello($name) {
return ‘Hello, ‘ . $name;
}
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA :
”;
$server->service($HTTP_RAW_POST_DATA);
?>
Berikut implementasi NuSOAP untuk sisi klien:
Kode Program File client.php
<?php
require_once(‘nusoap.php’);
$client = new soapclient(‘http://localhost/soap/server.php’);
$result = $client->call(‘hello’, array(‘name’ => $_GET['name']));
echo $result;
?>
Berikut ini tampilan di web browser dari web service yang dijalankan antar dua file server.php dan client.php tersebut:
Nah, pembaca yang terhormat selamat mencoba yah..!!




Saya masih bingung dengan konsep dan contoh implementasinya mas. Tolong kasih script simplenya berikut keterangannya. Terimakasih
wah bagus banget artikelnya… setelah nyari kesana kesini, akhirnya saya dapet contoh simple dari SOAP. dan dah saya praktekan juga tenyata berhasil, setelah saya donload file nusoap.phpnya…
makasih banyak buat yang punya blog, akhirnya saya dapet bahan juga buat persentasi tugas kampus saya….
keep writing and share your skill…….
bravoo……
best regard
koelimaya
contoh membangun client/server menggunakan soap dan php
program:
penjumlahan,pengurangan, perkalian,pembagian
ahsahsdhoahsdohao
Apa bedanya SOAP dgn XMLRPC? da
Wah lumayan juga artikelnya, good job lah … bisa jadi referensi, kebetulan saya sedang mengembangkan soap antara php dan dot net. salam kenal yach…
Oh, ya mas…. saya mau tanya… gimana kita bisa mengintegrasikan suatu web service sehingga bisa digunakan di platform programming langguage yang berbeda? seperti di .NEt dan PHP….
Saya udah coba code SOAP di PHP 5.1.4.3 menggunakan NUSOAP… Namun hasil dari HTTP_RAW_POST_DATA yang dikembalikan masih NULL…….
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA :”;
Mohon Bimbingannnya
lagi mau belajar web service….
thx’s artikelnya…
pak librari yang d NuSOap itu aplikasinya gimana.
Apakah penggunaa xml rpc bisa disebut dengan web service???
Apakah penggunaan xml rpc bisa disebut dengan web service???
masih bingung mas ,.. tapi makasih da buat masukkan,..pengen nanya .// ada ga buku yang mengulas web servivce beserta contoh scriptnya cz buat tgs PKl Q yang ga kelar2 gara 2 masalah web service,..