Anda tidak dapat membandingkan REST dan SABUN. REST adalah gaya arsitektur sedangkan SOAP adalah protokol.
Sayangnya, REST menjadi bahasa sehari-hari yang diucapkan sebagai sinonim untuk layanan HTTP RESTful, yang berarti realisasi arsitektur gaya REST dengan HTTP sebagai protokol (aplikasi).
REST didasarkan pada prinsip-prinsip berikut (kendala dan elemen) (dalam kurung realisasi dalam HTTP tenang) [1] .
- Stateless (HTTP adalah protokol stateless)
- Sumberdaya (diidentifikasi oleh URI)
- Uniform Interface (Metode HTTP)
- Representasi (MIME-TYPE)
- HATEOS (Hyperlink)
- Cache (HTTP Cache)
Di sisi lain banyak orang bermaksud mengatakan SOAP layanan web berdasarkan WSDL dan SOAP yang merupakan bagian dari arsitektur layanan web W3C [2] .
- SOAP digunakan sebagai protokol untuk bertukar informasi (pada dasarnya nama metode, parameter, nilai balik, tipe data, ...).
- WSDL bahasa definisi antarmuka untuk menggambarkan layanan web.
Apa arti penting SOAP saat ini?
SOAP adalah standar W3C dan digunakan sebagai format pertukaran informasi dalam layanan web W3C. Layanan web itu - terutama selama hype SOA (arsitektur berorientasi layanan) sekitar 2008 (+ - 3 tahun) - dan (sayangnya) masih diimplementasikan sebagian besar dalam aplikasi perusahaan.
Ini memiliki beberapa alasan. Saat itu HTTP tenang tidak dikenal, dan itu disalahpahami. Sayangnya, masih disalahpahami melihat jawaban lain
"[...] ISTIRAHAT jauh lebih terbatas daripada sabun [...]."
"Tujuan utama REST adalah untuk mewakili sumber daya di Internet [...]."
Selain itu, SOAP (dan WSDL) adalah bagian dari tumpukan protokol layanan web W3C yang bahkan memberikan lebih banyak standar untuk mengimplementasikan Layanan Web.
Apakah orang masih mengembangkan API berbasis SOAP baru, atau sebagian besar adalah warisan sekarang?
Jadi ya, masih ada dan akan ada juga dalam sistem masa depan di luar sana yang menggunakan SOAP (setidaknya dalam sistem perusahaan, kebanyakan di belakang pintu). Tetapi mayoritas berusaha melakukan semacam "REST" saat ini.
Dapatkah seseorang tolong perbaiki saya jika saya salah tentang perbedaan antara SOAP dan REST ini?
Mengatakan REST adalah arsitektur stateless yang lebih fleksibel untuk transfer data bukanlah penjelasan yang baik. Cukup diucapkan REST adalah gaya arsitektur dengan batasan dan elemen tertentu. Sedangkan SOAP adalah protokol pertukaran informasi.
Seperti yang sudah saya tulis, Anda tidak dapat membandingkannya. Tetapi Anda dapat membandingkan Layanan Web HTTP RESTful dengan Layanan Web SOAP / WSDL.