Home > IT Learning > Membangun Web Service Open Source dengan SOAP

Membangun Web Service Open Source dengan SOAP

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:

  1. Envelope element yang mengidentifikasi dokumen XML sebagai sebuah pesan SOAP.
  2. Elemen header yang berisi informasi header. Elemen ini bersifat opsional.
  3. Elemen body yang berisi panggilan dan merespon informasi.
  4. Fault element yang berisi pesan kesalahan yang terjadi pada waktu proses. Elemen ini opsional.

Berikut struktur utama pesan SOAP:

soap amplop

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&#8217;);
$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:

Tampilan Web Service sederhana dengan PHP

Hasil dari SOAP

Nah, pembaca yang terhormat selamat mencoba yah..!!

Categories: IT Learning
  1. July 18, 2007 at 12:48 pm

    Saya masih bingung dengan konsep dan contoh implementasinya mas. Tolong kasih script simplenya berikut keterangannya. Terimakasih

  2. July 19, 2007 at 8:40 pm

    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

    • Fung
      June 20, 2010 at 3:18 pm

      Bang..itu gimana cara compilenya ? saya uda masukkan ke folder htdocs tapi kenapa pa saya compile di browser ada yang salah di line 3 atau 6 gitu? mohon keterangan nya yah.

  3. otehn
    August 9, 2007 at 6:23 am

    contoh membangun client/server menggunakan soap dan php
    program:
    penjumlahan,pengurangan, perkalian,pembagian

  4. asu
    December 5, 2007 at 12:39 pm

    ahsahsdhoahsdohao

  5. vids
    February 19, 2008 at 5:11 am

    Apa bedanya SOAP dgn XMLRPC? da

  6. harisanto
    March 14, 2008 at 1:41 am

    Wah lumayan juga artikelnya, good job lah … bisa jadi referensi, kebetulan saya sedang mengembangkan soap antara php dan dot net. salam kenal yach…

  7. Hery
    March 14, 2008 at 4:31 am

    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

  8. July 1, 2008 at 7:45 am

    lagi mau belajar web service….🙂

    thx’s artikelnya…

  9. July 17, 2008 at 7:13 am

    pak librari yang d NuSOap itu aplikasinya gimana.

  10. Andre
    September 9, 2008 at 6:38 am

    Apakah penggunaa xml rpc bisa disebut dengan web service???

  11. Andre
    September 9, 2008 at 6:39 am

    Apakah penggunaan xml rpc bisa disebut dengan web service???

  12. NoNo
    October 5, 2009 at 5:27 am

    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,..

  13. November 22, 2009 at 2:41 pm

    masih blum ngerti aq

  14. March 21, 2010 at 6:45 am

    Lanjut kang

  15. viscorus2004
    May 24, 2010 at 3:28 am

    artikel yang bagus terima kasih😀

  16. April 1, 2012 at 10:06 am

    Makasih ya gan materinya.. Lagi cari2 referansi buat PHP SOAP..

    Sukses gan..

  17. Yoshua
    April 2, 2012 at 3:14 am

    kalo mau view data dari database pakai web service gmn ya??
    tolong kirim ke yoshuajoe@ymail.com
    makasih ya ..

  18. December 29, 2014 at 9:14 am

    mantap gan😀

  1. January 2, 2011 at 10:09 am

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: