Membuat Web Service WSDL Sederhana Dengan Menggunakan NuSOAP + PHP

Tanah Pengetahuan
4 min readNov 22, 2020

--

Hallo, kali ini saya akan membagikan cara membuat web service sederhana berbasis XML (WSDL) dengan menggunakan NuSOAP + PHP. Web service ini menggunakan protokol standar yaitu WSDL (Web Service Definition Language) atau SOAP (Simple Object Access Protocol).

Langsung saja dibawah ini:

1. Download NuSOAP terlebih dahulu disini: https://sourceforge.net/projects/nusoap/

2. Setelah di Download, buka file kompresi dengan winRAR atau ZIP kemudian pilih file nusoap.php pada folder lib.

3. Setelah itu copy kan file nusoap.php ke dalam folder yang akan di gunakan di folder htdocs. Untuk lokasi penempatan filenya bisa mengikuti dibawah ini.

4. Buka XAMPP dan klik Config pada baris Apache kemudian pilih atau klik PHP (php.ini)

5. Setelah file php.ini terbuka, silahkan cari kata soap dengan menekan tombol ctrl+f kemudian masukkan kata “soap” (tanpa tanda kutip), kemudian klik find next. Jika sudah bertemu dengan kata ;extension = soap, hapus tanda titik koma (;) di depan kata extension sehingga menjadi seperti di gambar dibawah ini. Setelah itu, simpan atau save dengan menekan tombol ctrl + s atau melalui File > Save.

6. Setelah itu, aktifkan services Apache pada XAMPP dengan mengklik tombol start pada bagian Apache. Setelah itu tunggu sebentar hingga aktif seperti dibawah ini.

7. kemudian di dalam folder projects kalian atau folder yang terdapat file nusoap.php, buatlah satu file berekstensi php dengan nama server.php. Untuk membuatnya, kalian dapat menggunakan text editor seperti Notepad, Notepad++, Sublime Text, atau Visual Code Studio. Disini saya menggunakan Visual Studio Code.

8. Jika sudah membuat file server.php, tahap selanjutnya adalah memasukkan code dibawah ini kedalam file. Cukup copy kan code dibawah ini. Setelah di copy kedalam file, simpan file ini (ctrl+s).

<?php

require_once ‘nusoap.php’;

$server = new nusoap_server();

$namespace = ‘http://localhost';

$server -> configureWSDL(‘server_wsdl’,’urn:server_wsdl’);

$server->register(‘hello’, // method name

array(‘name’ => ‘xsd:string’), // input parameters

array(‘return’ => ‘xsd:string’), // output parameters

‘urn:hellowsdl’, // namespace

‘urn:hellowsdl#hello’, // soapaction

‘rpc’, // style

‘encoded’, // use

‘Says hello to the caller’ // documentation

);

function hello($name) {

return ‘ Hello, ‘.$name;

}

$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA: ‘’;

$server->service(file_get_contents(“php://input”));

exit();

?>

9. Kemudian buat satu file lagi untuk client. Buat file dengan nama client.php, setelah itu copy kan kode dibawah ini kedalam file client.php. Setelah itu simpan atau save file nya.

<?php

require_once ‘nusoap.php’;

$client=new nusoap_client(‘http://localhost/XML/nusoap/server.php?wsdl', ‘wsdl’,true);

$err = $client->getError();

if($err){

echo ‘Error’.$err;

}

$result=$client->call(‘hello’,array(‘name’ => ‘Nazrin NRN’));

if($client->fault){

echo ‘Fault’;

print_r($result);

}else{

$err=$client->getError();

if($err){

echo ‘Error’.$err;

}else{

echo ‘Result’;

print_r($result);

}

}

echo ‘<h2>Request</h2>’;

echo ‘<pre>’.htmlspecialchars($client->request,ENT_QUOTES).’</pre>’;

echo ‘<h2>Respond</h2>’;

echo ‘<pre>’.htmlspecialchars($client->request,ENT_QUOTES).’</pre>’;

?>

10. Jika sudah, silahkan buka file client.php di dalam localhost. Service yang sudah bekerja (tanpa erorr) baik dari sisi server maupun client akan berbentuk seperti dibawah ini.

Service akan menampilkan request berupa array nama yang telah dibentuk didalam client tadi (‘name’ => ‘Nazrin NRN’). Kalian dapat mengganti nama Nazrin NRN dengan nama kalian atau kata-kata lain.

Referensi: https://www.tanahpengetahuan.com/2020/11/membuat-web-service-xml-wsdl-sederhana.html

--

--

Tanah Pengetahuan
Tanah Pengetahuan

Written by Tanah Pengetahuan

0 Followers

Land of Unified Knowlegde merupakan website yang didirikan untuk memberikan pengetahuan kepada masyarakat

No responses yet