Web Service

Penggunaan pertukaran data dan kebutuhan untuk mendefinisikan bahan-bahan dari world-wide web berkembang dengan cepat dengan komunikasi dan interoperabilitas antar aplikasi.

Service ini menyediakan perangkat standar pada komunikasi jaringan antar software aplikasi yang berbeda-beda yang terlibat dalam menampilkan informasi berbasis konteks yang dinamik kepada user. Supaya dapat mempromosikan interoperabilitas dan ekstensibilitas diantara aplikasi-aplikasi tersebut, serta supaya masing-masing dapat dikombinasikan, untuk menjalankan suatu tugas yang lebih kompleks, maka diperlukan suatu arsitektur web service.

Web service ini didasarkan kepada protokol SOAP, WSDL, dan NuSOAP sebagai SOAP ekstension untuk PHP. Dengan ketiga tool ini, akan diperoleh suatu web service opensource yang dapat digabungkan dengan software opensource lain untuk membangun aplikasi berbasis web yang lengkap.

Tujuan dari pengembangan web service ini pada dasarnya adalah untuk menyediakan akses dan memudahkan pertukaran data dengan beragam client melalui web services. Untuk melakukan hal ini, yang langkah yang dilakukan adalah :
1. Mendefinisikan arsitektur webservices,
2. Mengimplementasikan arsitektur webservices,
3. Mengembangkan implementasi software berbasis arsitektur webservices,

Arsitektur Web service dan Software Implementasi

Definisi dan Dasar Teori
SOAP (Simple Object Access Protocol)

SOAP adalah Lightweight XML-based protocol untuk mempertukarkan struktur informasi antar aplikasi terdistribusi melalui protokol-protokol native semacam HTTP.

SOAP
1. menentukan format XML,
2. Cara data diproses,
3. Menentukan aturan untuk mengenkode, untuk standar dan tipe data yang didefinisikan oleh aplikasi,
4. Konvensi yang merepresentasikan remote procedure call, dan response.

Tiga bagian yang menyusun protokol SOAP,
1. paket/amplop yang menggambarkan konten pesan dan bagaimana cara untuk menggunakannya,
2. Sekumpulan aturan untuk serialisasi pertukaran data antar aplikasi,
3. Prosedur yang merepresentasikan remote procedure call, yaitu, cara query dan respon ditampilkan,

SOAP extension for PHP
SOAP extension for PHP adalah kumpulan library yang digunakan untuk mengembangkan web service menggunakan PHP.

WSDL (Web Service Definition Language)
WSDL adalah format XML untuk mendeskripsikan layanan network sebagai sekumpulan endpoint yang beroperasi pada pesan yang berisi informasi berorientasi dokumen, dan informasi berorientasi prosedur.

WSDL diperluas supaya dapat menggambarkan endpoint serta pesannya dengan mengabaikan format pesan, protokol jaringan yang digunakan untuk berkomunikasi.

Arsitektur Web Service
Langkah yang dilakukan untuk mendefinisikan web service :
1. Pemanggilan web browser yang membuat call procedure pada file WSDL dan klien layanan SOAP (SOAP Service Client),
2. klien SOAP Service mengambil method dan parameter untuk membangun kontainer XML; kontainer ini dikirim melalui HTTP sebagai SOAP request,
3. server SOAP Service menerima SOAP request; Soap_parser_class mengubah XML container dan menentukan method yang dipanggil serta parameter-parameter method ini,
4. method kemudian dieksekusi pada server serta mengirimkan output,
5. hasil/output kemudian dibungkus sebagai XML dan server mengirimkan XML result container sebagai respon untuk request POST oleh Soap_transport_http_class.
6. client mengubah XML response container dan mengirimkan hasil ke aplikasi yang memanggilnya.
7. aplikasi kemudian memproses hasil.

php

Implementasi Software untuk Arsitektur Web Service
Implementasi software untuk arsitektur webservice, contohnya digunakan untuk sistem konferensi berbasis web. Sistem meliputi submission, upload, dan review. Langkah-langkah yang dilakukan :
1. untuk mendefinisikan SOAP client sebagai awal SOAP service, dibutuhkan untuk mengumpulkan beberapa informasi tentang layanan spesifik berikut :
a. nama method,
b. endpoint URL tempat service dijalankan,
c. SOAP Action header value untuk method di atas,
d. Namespace URI untuk method,
e. Nama dan tipe parameter input dan output

Contoh informasi yang diperlukan, sebagai berikut :

Method Name  getData
Endpoint  URL http://hs19.iccs.bas.bg/nusoap
SOAPAction  urn:getData#getData
Method Namespace  URI urn:getData
Input Parameters  Symbol:string
Output Parameters  Result:float

2. Langkah kedua adalah membuat dokumen WSDL (sub.wsdl) yang mendeskripsikan layanan dalam format permintaan dari klien.
3. Langkah ketiga adalah pengembangan Soap_parser_class, Soap_transfer_http_class, dan integrasi sistem web untuk submission, upload, dan review dengan arsitektur yang diusulkan. Semua file sistem web harus diletakkan di suatu server yang didefiniskan di dokumen WSDL di mana endpoint URL layanan tersebut dijalankan.

sumber : www.comlabs.itb.ac.id

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS