Web Service 1. Pendahuluan Internet merupakan teknologi yang paling populer digunakan oleh masyarakat saat ini. Dengan adanya layanan internet, orang-orang dapat membrowsing informasi ke web-web tertentu. Situs web dirancang untuk menampilkan page/halaman informasi dan menyediakan interaksi antar manusia
2. Defenisi Web service Web service adalah komponen layakan aplikasi yang didesain untuk mendukung interaksi antar aplikasi dan integrasi aplikasi yang biasanya diserialisasi dengan menggunakan XML (eXtensible Markup Language) (dalam teknologi WSE (Web Service Enchanment) memungkinkan web service untuk diserialisasi sebagai binary) dan dapat diakses melalui protokol terbuka yaitu SOAP (Simple Object Access Protocol) dengan bahasa WSDL (Web Service Description Language) dan terdaftar dalam UUDI (Universal Discovery Description and Integration). XML sendiri adalah sebuah standart yang digunakan untuk mendefinisikan data dalam format yang sederhana dan fleksibel. Gambar berikut menunjukkan infrastruktur dari xml web service.
Pada gambar 1 terlihat bahwa infrastruktur dari XML Web Service terdiri dari 4 macam yaitu: 1. 2. 3. 4.
XML Web Service Directory XML Web Service Discovery XML Web Service Description XML Web Service Wire Format
1. XML Web Service Directory. Konsep lain dalam teknologi web service adalah web service registry. Setelah membuat sebuah web service, provider bisa memilih untuk mempublikasikan dokumen WSDL pada sebuah registry. Registry tersebut bisa jadi milik organisasi provider web service atau milik pihak ketiga. Client yang berminat menggunakan web service akan mencari informasi tentang sebuah web service di direktori registry untuk menentukan lokasi sebuah web service dan mendapatkan WSDL-nya. Selanjutnya client menggunakan dokumen WSDL untuk membuat request ke web service. Kegiatan publish, searching, dan retrieve tersebut ditentukan oleh UDDI (Universal Description, Discovery, and Integration). Bentuk XML yang didefinisikan oleh UDDI merupakan 4 tipe informasi yang memnugkinkan seorang developer mempublikasikan XML Web Service nya. Keempat tipe tersebut antara lain: 1. Informasi bisnis. 2. Informasi servis. 3. Informasi binding. 4. Informasi khusus yang ada hubungannya dengan web service tersebut. 2. XML Web Service Discovery XML Web Service Discovery merupakan proses pencarian atau penemuan satu atau lebih dokumen yang berhubungan dengan XML Web Service dengan menggunakan WSDL (Web Service Description Language). Web Service Description Language (WSDL) adalah sebuah dokumen XML yang menyediakan segala informasi yang diperlukan untuk menentukan lokasi dan cara mengakses web service. Provider web service lah yang bertanggung jawab membuat WSDL. WSDL juga mendeskripsikan message, tipe, return value, dan detil lain yang dimiliki web service. Dengan demikian client dapat menemukan lokasi dari Web Service melalui WSDL. Berikut ini contoh dokumen yang ditemukan oleh WSDL: 3. XML Web Service Description. Ini merupakan deskripsi dari XML Web Service berdasarkan kesepakatan para vendor dan dilandasi standart WSDL. Sifat XML Web Service ditentukan oleh format message atau pola dari XML Web Service itu sendiri.
4. XML Web Service Wire Format XML Web Service tidak dibatasi untuk menyediakan remote procedure control (RPC). XML Web Service dapat dibangun melalui protokol HTTP-GET, HTTP-POST dan SOAP. HTTP-GET dan HTTP-POST merupakan standart protokol yang memakai HTTP (Hypertext Transfer Protocol) untuk encoding dan mengirim parameter sesuai dengan format HTTP tersebut. HTTP-GET mengirim parameter dalam URL-encoded text memakai tipe MIME yang ditambahkan URL server yang menangani request. Pada HTTP-POST juga mengirim parameter sesuai dengan kebutuhan. SOAP adalah protokol untuk pertukaran message berformat XML. Sebuah client web service mengirim request berbentuk XML kepada provider web service. Provider mem-parsing request tersebut, menjalankan service, dan mengirim response kembali ke client juga dalam bentuk XML. Baik request dan response tersebut keduanya menggunakan protokol SOAP. Perbedaan Web Site dengan Web Service Web Site
Web Service Interaksi atau dipanggil melalui aplikasi Memiliki interface yang menarik dan lain dan bentuk response berupa format langsung berinteraksi dengan user XML
3. Arsitektur Web Service
Service-oriented architecture terdiri dari tiga role penting, yaitu service provider, service consumer, dan service broker. 1. Service Provider Service provider adalah sebuah node pada jaringan (intranet atau internet) yang menyediakan akses ke interface pada layanan software yang
menampilkan beberapa set operasi yg spesifik. Service provider menyediakan akses ke layanan dari sebuah sistem bisnis, subsistem, atau sebuah komponen. 2. Service Consumer Service consumer adalah sebuah node pada jaringan yang mem-binding ke sebuah layanan dari service provider dan menggunakan layanan tersebut untuk mengimplementasi solusi bisnis. Pada service-oriented architecture model, service consumers bukanlah aplikasi, tetapi node. Namun, sesuai dengan tujuan dari penyampaian materi ini, kita akan memandang service consumers sebagai aplikasi client pada sebuah node. 3. Service Broker (Discovery Agency) Service broker adalah sebuah node pada jaringan yang merupakan sebuah tempat penyimpanan deskripsi layanan dan dapat digunakan seperti address book untuk menemukan dimana lokasi layanan. Service consumer dapat menginterogasikan service broker untuk menempatkan service provider dan layanan yang wajib. Ada tiga operasi dasar, yaitu : 1. Publish Services Service provider mem-publish layanan mereka ke service broker. Informasi yang di-publish termasuk definisi interface layanan, lokasi service provider, dan informasi atau dokumentasi lainnya. 2. Find Services Service consumer menemukan layanan dengan menggunakan service broker. 3. Bind to Services Service consumers mem-bind ke layanan yang lebih spesifik yang disediakan oleh service provider. Proses binding termasuk autentikasi consumers.
Bersandar pada pondasi bagi XML untuk teknologi dari Web Service, dan HTTP sebagai dasar protocol, Web Service banyak melibatkan protokol baku untuk mencapai kemampuan dari akses, deskripsi, dan penemuan/discovery. SOAP (Simple Object Access Protocol) adalah standar untuk bertukar pesan-pesan berbasis XML melalui jaringan komputer atau sebuah jalan untuk program yang berjalan pada suatu sistem operasi (OS) untuk berkomunikasi dengan program pada OS yang sama maupun berbeda dengan menggunakan HTTP dan XML sebagai mekanisme untuk pertukaran data. Adapun standard uraian Service untuk Web Service adalah misalnya terdapat suatu jaringan yang umum untuk berkomunikasi dan suatu satuan format dan interpretasi message yang disetujui secara umum, maka apa persyaratan yang berikutnya untuk memudahkan komunikasi antara penyedia service (provider) dan pemohon service (requester)? Mereka harus mempunyai suatu pemahaman semantik yang umum tentang isi dari message mengenai apa yang mereka maksud untuk memenuhi transaksi mereka pada jaringan tsb. Suatu pemohon yang potensial harus mengetahui service apa yang tersedia dari penyedia service, format message apa yang diperlukan untuk membuat permohonan, biaya-biaya apa yang dilibatkan, dan lain-lain. Seorang pedagang yang ingin menggunakan penyedia service untuk menjual barang-barangnya harus mampu menguraikannya sedemikian sehingga penyedia service dapat memahami uraian mengenai barang-barang tsb dan menyampaikannya ke para pembeli yang potensial.
Standardisasi dari uraian service untuk mendukung Web Service dicapai melalui WSDL. Bahasa ini menggambarkan interface yang diperlukan untuk interaksi antara pemohon dan penyedia service dan juga menentukan penempatan/lokasi dari penyedia service tsb. Penyedia service menerbitkan suatu service dengan membuat dokumen uraian WSDL-nya tersedia untuk pemohon yang potensial. Ini bisa dilakukan dalam berbagai cara, tetapi satu cara yang standard adalah bagi penyedia service untuk mendaftarkan service dengan suatu registry (pencatatan) dan bagi pemohon service untuk menemukan service dengan pencarian registry tsb. Spesifikasi yang digunakan untuk pencatatan adalah spesfikasi UDDI. Cara kerja web service:
1. Informasi dari web service yang dikunjungi oleh aplikasi/browser dari sisi client dapat diterima karena adanya UUDI registry. 2. Kemudian WSDL untuk web service akan diterima client dari UUDI registry agar dapat menentukan API web service yang dikunjungi client. 3. Aplikasi klien akan dapat saling berkomunikasi melalui SOAP menggunakan API.
4. Konfigurasi Web Service 5. Penerapan Web Service Contoh Penerapan Web Service : 1. Sistem login seperti yang ada di Kaskus* Jika Anda mengunjungi Kaskus, maka Anda akan menjumpai sistem login yang dapat menggunakan akun Facebook, Yahoo maupun Twitter.
Dengan kata lain, Anda dapat bergabung dalam komunitas forum Kaskus atau istilah kerennya Kaskuser hanya dengan memiliki akun FB, Yahoo atau Twitter tanpa harus registrasi di dalam Kaskus nya sendiri. 2. Di bagian komentar Detik.com. Setiap kali kita akan mengisi komentar di Detik.com, kita bisa menggunakan akun FB kita. *
6. Kesimpulan