Anda di halaman 1dari 6

PERKEMBANGAN ANTARA WEB SERVICE YANG MENGGUNAKAN PROTOCOL SOAP DAN REST

Nurasanah

110155201072

Jln.Sultan Mahmud, no 57,Tanjungpinang,Kepri 29121 Emaili: Nurhasanah.hanacalm@gmail.com Mahasiswa Program S1 Teknik Informatika ,FT, UMRAH

PERKEMBANGAN ANTARA WEB SERVICE YANG MENGGUNAKAN PROTOCOL SOAP DAN REST Nurasanah 110155201072 Jln.Sultan Mahmud, no 57,Tanjungpinang,KepriNurhasanah.hanacalm@gmail.com Mahasiswa Program S1 Teknik Informatika ,FT, UMRAH ABSTRAK Web services memungkinkan dua buah aplikasi untuk saling berkomunikasi meskipun aplikasi tersebut berbeda platform. Dengan menggunakan web services, aplikasi Java dapat menggunakan layanan yang diberikan oleh aplikasi berbahasa pemrograman lain. Dengan menggunakan web service, maka kita dapat mempublish function, procedure, message dan lain-lain melalui jaringan internet atau intranet. Dasar dari Web Service adalah XML dan HTTP. Ada terdapat dua standard protocol yang digunakan dalam komunikasi data di web service yaitu SOAP Based Service dan REST Based Service. Yang mana masing- masing protocol memiliki keunggulan dan kelemahan. Jika anda ingin membuat suatu web service yang memuaskan, anda dapat memutuskan dengan baik protocol apa yang harus anda gunakan. Kata kunci : SOAP, REST, Web service 1. PENDAHULUAN Beberapa waktu akhir-akhir ini, web service menjadi semakin populer bagi para pengembang aplikasi. Teknologi web service merupakan salah satu cara setiap fungsi bisnis untuk berkomunikasi. Bukan seperti model client/server tradisional, seperti web server atau sistem laman web, Web service tidak menyediakan GUI untuk para pengguna. Web service hanya menyediakan business logic, proses, dan data dalam antarmuka pemrograman antar jaringan [1]. Web services tidak memerlukan browser atau HTML. Sehingga berikutnya Web service dapat ditambahkan ke sebuah GUI (seperti laman web atau aplikasi desktop). Web service adalah sebuah sofware aplikasi yang tidak terpengaruh oleh platform, ia akan menyediakan method-method yang dapat diakses oleh network. Ia juga akan menggunakan XML untuk pertukaran data, khususnya pada dua entities bisnis yang berbeda. Adapun pengertian lain dari Web Service Web service adalah sistem software yang dirancang untuk mendukung interopabilitas mesin-ke- mesin yang dapat berinteraksi melalui jaringan. Web service memiliki antarmuka yang dijelaskan dalam format mesin-processable (khusus WSDL). Sistem lain berinteraksi dengan Web service dalam cara ditentukan oleh deskripsi dengan menggunakan pesan SOAP, biasanya disampaikan menggunakan HTTP dengan serialisasi XML dalam hubungannya dengan Web lainnya yang terkait standar Jadi pada dasarnya, dengan memahami ketiga komponen tersebut sebenarnya pembuatan web service itu relatif sangat " id="pdf-obj-0-12" src="pdf-obj-0-12.jpg">

ABSTRAK

Web services memungkinkan dua buah aplikasi untuk saling berkomunikasi meskipun aplikasi tersebut berbeda platform. Dengan menggunakan web services, aplikasi Java dapat menggunakan layanan yang diberikan oleh aplikasi berbahasa pemrograman lain. Dengan menggunakan web service, maka kita dapat mempublish function, procedure, message dan lain-lain melalui jaringan internet atau intranet. Dasar dari Web Service adalah XML dan HTTP. Ada terdapat dua standard protocol yang digunakan dalam komunikasi data di web service yaitu SOAP Based Service dan REST Based Service. Yang mana masing- masing protocol memiliki keunggulan dan kelemahan. Jika anda ingin membuat suatu web service yang memuaskan, anda dapat memutuskan dengan baik protocol apa yang harus anda gunakan. Kata kunci : SOAP, REST, Web service

PERKEMBANGAN ANTARA WEB SERVICE YANG MENGGUNAKAN PROTOCOL SOAP DAN REST Nurasanah 110155201072 Jln.Sultan Mahmud, no 57,Tanjungpinang,KepriNurhasanah.hanacalm@gmail.com Mahasiswa Program S1 Teknik Informatika ,FT, UMRAH ABSTRAK Web services memungkinkan dua buah aplikasi untuk saling berkomunikasi meskipun aplikasi tersebut berbeda platform. Dengan menggunakan web services, aplikasi Java dapat menggunakan layanan yang diberikan oleh aplikasi berbahasa pemrograman lain. Dengan menggunakan web service, maka kita dapat mempublish function, procedure, message dan lain-lain melalui jaringan internet atau intranet. Dasar dari Web Service adalah XML dan HTTP. Ada terdapat dua standard protocol yang digunakan dalam komunikasi data di web service yaitu SOAP Based Service dan REST Based Service. Yang mana masing- masing protocol memiliki keunggulan dan kelemahan. Jika anda ingin membuat suatu web service yang memuaskan, anda dapat memutuskan dengan baik protocol apa yang harus anda gunakan. Kata kunci : SOAP, REST, Web service 1. PENDAHULUAN Beberapa waktu akhir-akhir ini, web service menjadi semakin populer bagi para pengembang aplikasi. Teknologi web service merupakan salah satu cara setiap fungsi bisnis untuk berkomunikasi. Bukan seperti model client/server tradisional, seperti web server atau sistem laman web, Web service tidak menyediakan GUI untuk para pengguna. Web service hanya menyediakan business logic, proses, dan data dalam antarmuka pemrograman antar jaringan [1]. Web services tidak memerlukan browser atau HTML. Sehingga berikutnya Web service dapat ditambahkan ke sebuah GUI (seperti laman web atau aplikasi desktop). Web service adalah sebuah sofware aplikasi yang tidak terpengaruh oleh platform, ia akan menyediakan method-method yang dapat diakses oleh network. Ia juga akan menggunakan XML untuk pertukaran data, khususnya pada dua entities bisnis yang berbeda. Adapun pengertian lain dari Web Service Web service adalah sistem software yang dirancang untuk mendukung interopabilitas mesin-ke- mesin yang dapat berinteraksi melalui jaringan. Web service memiliki antarmuka yang dijelaskan dalam format mesin-processable (khusus WSDL). Sistem lain berinteraksi dengan Web service dalam cara ditentukan oleh deskripsi dengan menggunakan pesan SOAP, biasanya disampaikan menggunakan HTTP dengan serialisasi XML dalam hubungannya dengan Web lainnya yang terkait standar Jadi pada dasarnya, dengan memahami ketiga komponen tersebut sebenarnya pembuatan web service itu relatif sangat " id="pdf-obj-0-18" src="pdf-obj-0-18.jpg">

1.

PENDAHULUAN

Beberapa waktu akhir-akhir ini, web service menjadi semakin populer bagi para pengembang aplikasi. Teknologi web service merupakan salah satu cara setiap fungsi bisnis untuk berkomunikasi. Bukan seperti model client/server tradisional, seperti web server atau sistem laman web, Web service tidak menyediakan GUI untuk para pengguna. Web service hanya menyediakan business logic, proses, dan data dalam antarmuka pemrograman antar jaringan [1]. Web services tidak memerlukan browser atau HTML. Sehingga berikutnya Web service dapat ditambahkan ke sebuah GUI (seperti laman web atau aplikasi desktop). Web service adalah sebuah sofware aplikasi yang tidak terpengaruh oleh platform, ia akan

menyediakan method-method yang dapat diakses oleh network. Ia juga akan menggunakan XML untuk pertukaran data, khususnya pada dua entities bisnis yang berbeda. Adapun pengertian lain dari Web Service Web service adalah sistem software yang dirancang untuk mendukung interopabilitas mesin-ke- mesin yang dapat berinteraksi melalui jaringan. Web service memiliki antarmuka yang dijelaskan dalam format mesin-processable (khusus WSDL). Sistem lain berinteraksi dengan Web service dalam cara ditentukan oleh deskripsi dengan menggunakan pesan SOAP, biasanya disampaikan menggunakan HTTP dengan serialisasi XML dalam hubungannya dengan Web lainnya yang terkait standar Jadi pada dasarnya, dengan memahami ketiga komponen tersebut sebenarnya pembuatan web service itu relatif sangat

mudah, jika kita sudah memahami bagaimana membuat aplikasi website [. Web Services digunakan pada saat kita akan mentransformasi sebuat bisnis logik dan object yang terpisah dalam satu ruang lingkup yang menjadi satu (dalam sebuah institusi), sehingga tingkat keamanan data dapat ditangani dengan baik. Selain itu Web Service juga lebih mudah dalam process deploymentnya, karena tidak memerlukan registrasi khusus ke dalam sistem operasi. Web Service cukup diupload ke Web Server dan siap diakses oleh pihak- pihak yang telah diberikan otorisasi. Web Service berjalan di port 80 yang merupakan protokol standar HTTP, dengan demikian mengurangi resiko terblokir oleh firewall. Kendala arsitektur COM/DCOM adalah memerlukan konfigurasi khusus di sisi firewall, dan ini tidak perlu dilakukan untuk mengakses Web Service. Beberapa vendor luar negeri mulai berkolaborasi satu sama lain dengan konsep web services , diantaranya : IBM, Microsoft , SUN , ORACLE Diantaranya contoh web services yang sudah jadi dan dipakai adalah web services keluaran Microsoft ( Microsoft Passport ) web services untuk user name dan password yang sudah dipasang di web site Microsoft dan HOTMAIL.

2.

PEMBAHASAN

Saat ini terdapat dua tipe Web Service yaitu SOAP Based Service dan REST Based Service. Saya akan membahas tentang SOAP terlebih dahulu. SOAP (Simple Object Access Protocol) adalah sebuah XML-based mark-up language untuk pergantian pesan diantara aplikasi-aplikasi. SOAP berguna seperti sebuah amplop yang digunakan untuk pertukaran data object didalam network. SOAP mendefinisikan empat aspek didalam komunikasi:

Message envelope, Encoding, RPC call convention,

dan bagaimana menyatukan sebuah message didalam protokol transport. Proses layanan dengan arsitektur SOAP memiliki tiga komponen utama, yaitu: service provider, service requester, dan service broker. Dan komponen pendukung yaitu: XML, SOAP-XML (terdiri atas header dan body), 3WSDL, serta UDDI. Soap mempunyai tiga karakteristik, yaitu

  • Extensibility Security dan WS-routing adalah beberapa ekstension yang dapat digunakan sebagai security web service yang masih dalam tahap development.

  • Neutrality SOAP dapat digunakan pada berbagai transport protocol seperti HTTP, SMTP, TCP atau JMS (Java Messaging Service).

  • Independence SOAP dapat diprogram pada berbagai bahasa pemograman. Contoh bagaimana prosedur SOAP dapat digunakan suatu pesan SOAP dapat dikirimkan ke suatu website yang mendukung web service, seperti database harga real-estate, dengan parameter yang diperlukan untuk pencarian. Site tersebut kemudian akan mengembalikan dokumen dalam format XML dengan data hasil, contoh : harga, lokasi, fiturs. Dengan data hasil yang berupa suatu standard yang dapat di parsing, data tersebut kemudian dapat diintegrasikan secara langsung dengan website atau aplikasi pihak ketiga

Pesan SOAP berbentuk seperti sebuah envelope yang berisi header (optional) dan body (required), seperti ditunjukkan pada gambar. Header berisi blok informasi yang berhubungan dengan bagaimana pesan tersebut diproses. Hal ini meliputi pe-routingan dan delivery setting, authentication atau authorization assertions, and transaction contexts. Body berisi pesan sebenarnya yang dikirim dan diproses. Semua yang dapat ditampilkan dengan sintaks XML dapat dimasukkan dalam pesan body.

[2]

Pesan SOAP berbentuk seperti sebuah envelope yang berisi header (optional) dan body (required), seperti ditunjukkan pada

Gambar. Struktur SOAP

Ada beberapa rules (peraturan) didalam membuat SOAP message (Pesan) :

  • Sebuah pesan SOAP harus di encoding menggunakan XML

  • Sebuah pesan SOAP harus menggunakan SOAP Envelope Namespace

  • Sebuah pesan SOAP harus menggunakan SOAP encoding namespace

  • Sebuah pesan SOAP TIDAK harus berisi referensi DTD

  • Sebuah pesan SOAP TIDAK harus berisi XML Processing Instructions

Kelebihan SOAP

  • SOAP cukup fleksibel untuk memungkinkan penggunaan protokol transport yang berbeda. Stack standar menggunakan HTTP sebagai protokol transport, tetapi protokol lainnya seperti JMS dan SMTP juga bisa digunakan.

  • Karena terowongan Model SOAP baik di HTTP model get / respon, dapat dengan mudah melalui firewall dan proxy, tanpa modifikasi protokol SOAP, dan dapat menggunakan infrastruktur yang ada.

  • dirancang untuk menangani lingkungan komputasi terdistribusi

  • merupakan standar yang berlaku untuk web servis, sehingga mempunyai dukungan yang lebih baik dari standar yang lain (WSDL, WS-*) dan tools dari berbagai vendor

  • built-in error handling (faults)

  • extensibility

Kekurangan SOAP

  • Karena format XML yanb verbose, SOAP bisa jauh lebih lambat daripada teknologi middleware bersaing seperti CORBA atau ICE. Hal Ini mungkin tidak menjadi masalah ketika hanya pesan kecil dikirim. Untuk meningkatkan kinerja untuk kasus khusus dari XML dengan objek biner tertanam, Transmisi Pesan Mekanisme Optimization diperkenalkan.

  • Ketika mengandalkan HTTP sebagai protokol transport dan tidak menggunakan WS- Addressing atau ESB, peran pihak yang saling berinteraksi tetap. Hanya satu pihak (klien) dapat menggunakan layanan dari yang lain. Pengembang harus menggunakan polling bukan pemberitahuan dalam kasus-kasus yang umum.

  • Sulit untuk dikembangkan, mebutuhkan tools

  • Membutuhkan lebih banyak pernyataan/kode program Berikutnya adalah Restful Based Service protocol yang baru. REST adalah salah satu software arsitektur yang digunakan sebagai acuan ketika membuat aplikasi berbasis web service. Filosofi REST mendukung bahwa prinsip dan protokol yang sudah ada di Web cukup untuk membuat web servide yang kuat (robust). Hal ini berarti bahwa developer yang mengerti HTTP dan XML dapat mulai membangun web service tanpa membutuhkan toolkit di belakang apa yang biasanya digunakan dalam pengembangan aplikasi internet [3]. Dalam arsitektur REST, kunci resource diidentifikasi, dapat berupa entitas, koleksi, atau yang lain dimana nampak lebih bernilai ketika memiliki URI sendiri. Metode REST telah dikembangkankan

oleh Fielding yang didasari oleh empat prinsip utama teknologi, yaitu:

  • a. Resource identifier through Uniform Resource Identifier (URI),

  • b. uniform interface(sumberdaya CRUD menggunakan operasi PUT, GET, POST, dan DELETE),

  • c. self-descriptive messages(sumberdaya tidak terikat sehingga dapat mengakses konten HTML, XML, PDF, JPEG, plain text, meta data, dll), serta

d.

stateful

interactions

through

hyperlinks(bersifat stateless)

Metode REST lebih sederhana karena menggunakan format standar (HTTP, HTML, XML, URI, MIME), namun jika diperlukan proses pertukaran data, maka konten berupa teks dari hasil eksekusi web servicedapat diolah dalam format teks (seperti XML atau HTML) dengan menggunakan utilitas komunikasi data berupa koneksi socketprotokol HTTP. Utilitas ini umumnya tersedia dalam pustaka komunikasi pada bahasa pemrograman (seperti Java, Visual Basic, Delphi, PHP, ASP, dan JSP) [5].

Keuntungan REST

  • bahasa dan platform agnostic

  • lebih sederhana/simpel untuk dikembangkan ketimbang SOAP

  • mudah dipelajari, tidak bergantung pada tools

  • ringkas, tidak membutuhkan layer pertukaran pesan (messaging) tambahan

  • REST mudah diimplementasikan karena menggunakan metode yang

  • sama seperti ketika membuat web, yaitu menggunakan HTML. Sedangkan untuk pertukaran data, REST tidak hanya dapat menggunakan XML saja, tetapi juga dapat menggunakan JSON [7].

Kelemahan REST

  • Mengasumsi model point-to-point komunikasi - tidak dapat digunakan untuk lingkungan komputasi terdistribusi di mana pesan akan melalui satu atau lebih perantara

  • Kurangnya dukungan standar untuk keamanan, kebijakan, keandalan pesan, dll, sehingga layanan yang mempunyai persyaratan lebih canggih lebih sulit untuk dikembangkan ("dipecahkan sendiri")

  • Berkaitan dengan model transport HTTP

Perbedaan Antara SOAP dan Restful

Perbedaannya

SOAP

RESTFUL

Penggunaannya

Pada aplikasi - aplikasi Enterprise untuk mengintegrasikan penggunaan yang lebih luas dan banyak aplikasi dan tren yang lain adalah mengintegrasikan dengan legacy system (sistem lama yg sudah ada sebelumnya). Dalam internet, Google konsisten dalam mengimplementasikan web service kecuali Blogger yang menggunakan XML- RPC.

Twitter, Yahoo, termasuk Flickr, del.icio.us, pubsub, bloglines, technorati, dan beberapa yang lain.

 

Membutuhkan waktu yang

Lebih ringan karena

 

Penggunaan

panjang, dan menyebabkan membutuhkan Bandwidth

pada antarmuka RESTful adalah

Bandwidth

yang panjang.

request dan respon dapat dipendekkan

Caching

Request SOAP menggunakan POST dan membutuhkan request XML kompleks untuk dibangun yang akan membuat caching-respon terasa sulit.

Karena berbasis HTTP/Rest-ful API dapat dikonsumsi menggunakan request GET sederhana, server proxy/reverse-proxy dapat melakukan cache atas respon tersebut dengan mudah.

 

KESIMPULAN

Dari penjelasan detail di atas dapat dikatakan bahwa SOAP tidak semudah itu, SOAP membutuhkan usaha implementasi yang lebih besar dan pengetahuan di sisi klien, sedangkan web service berbasis HTTP atau REST-API membutuhkan implementasi yang lebih besar dan pengetahuan di sisi server. Adopsi API dapat meningkatkan lebih jauh lagi jika interface berbasis HTTP disediakan. Faktanya, HTTP berbasis API dengan respon XML/JSON mewakili yang terbaik dari kedua turunan dan mudah diimplementasikan dalam server semudah mengkonsumsi melalui server . Untuk mengkonsumsi web service, kadang- kadang bingung mengimplementasikan mana yang lebih mudah. Sebagai contoh Google AdWords web service sangat sulit untuk dikonsumsi (dalam CF apapun), karena menggunakan header SOAP, dan sejumlah hal lain yang membuatnya sulit. Sebaliknya, web service REST Amazon kadangkala rumit untuk diuraikan (pase) karena sangat berulang, dan hasil schema dapat sedikit bervariasi sesuai dengan apa yang Anda cari. Arsitektur mana yang Anda pilih, pastikan pilih yang termudah bagi developer untuk mengaksesnya, dan tersokumentasi dengan baik. Akhirnya ketika Anda meng-host layanan internet, hal tersebut adalah kompleksitas sisi klien yang paling penting untuk menarik klien untuk menggunakan web service Anda. Web Service SOAP dan RESTful mempunyai filosofi yang berbeda. SOAP sesungguhnya sebuah protokol komputasi terdistribusi berbasis XML, dimana REST cenderung masih sangat baru, desain berbass web. Sebagai catatan SOAP tidak sekompleks yang dikatakan banyak sumber, SOAP dapat dikatakan kompleks ketika digunakan untuk banyak ekstensi.

DAFTAR PUSTAKA [1] Snell,James,dkk 2001, Programming Web Services with SOAPCANADA: O'Reilly, [2] Purnamasar,SD 2008,Web service Sebagai Solusi Integrasi Data pada Sistem Informasi Universitas Bina Darma, No. 3. [3] Richardson, Leonard,dkk 2007,RESTful Web ServicesCalifornia : O'Reilly, [4] Istiyanto,sutanta, 2012, MODEL INTEROPERABILITAS ANTAR APLIKASI E-

GOVERNMENT’, page 114. [5] Pautasso, 2008, C., 2008, REST vs SOAP Making the Right Architectural Decision, SOA Symposium, Amsterdam. [6] Chappel,D, Jewell,T, 2002,Java Web Services:

O'Reilly, [7] Cerami, E. 2005. Web Service Essentials.

California: O’Reilly

[8] Lucky, 2008, XML Web services: Aplikasi Desktop, Internet & Handphone, Jasakom, Jakarta.