Apa perbedaan antara layanan web dan API? Apakah perbedaannya lebih dari protokol yang digunakan untuk mentransfer data? Terima kasih.
Apa perbedaan antara layanan web dan API? Apakah perbedaannya lebih dari protokol yang digunakan untuk mentransfer data? Terima kasih.
Jawaban:
API (Application Programming Interface) adalah sarana yang digunakan pihak ketiga untuk menulis kode yang berinteraksi dengan kode lainnya. Layanan Web adalah jenis API, yang hampir selalu beroperasi melalui HTTP (meskipun beberapa, seperti SOAP, dapat menggunakan transportasi alternatif, seperti SMTP). The Definisi W3C resmi menyebutkan bahwa Web Services tidak harus menggunakan HTTP, tapi ini hampir selalu terjadi dan biasanya diasumsikan kecuali disebutkan sebaliknya.
Untuk contoh layanan web secara khusus, lihat SOAP , REST , dan XML-RPC . Untuk contoh jenis API lain, yang ditulis dalam C untuk digunakan pada mesin lokal, lihat Linux Kernel API .
Sejauh protokol berjalan, API layanan Web hampir selalu menggunakan HTTP (karenanya bagian Web), dan pasti melibatkan komunikasi melalui jaringan. API secara umum dapat menggunakan sarana komunikasi apa pun yang mereka inginkan. API kernel Linux, misalnya, menggunakan Interrupts untuk memanggil panggilan sistem yang terdiri dari API untuk panggilan dari ruang pengguna.
Pada dasarnya, layanan web adalah metode komunikasi antara dua mesin sementara API adalah lapisan terbuka yang memungkinkan Anda untuk memprogram sesuatu.
Anda bisa memiliki API dan metode utama untuk berinteraksi dengan API itu adalah melalui layanan web.
Definisi teknis (milik Wikipedia) adalah:
Antarmuka pemrograman aplikasi (API) adalah seperangkat rutinitas, struktur data, kelas objek dan / atau protokol yang disediakan oleh perpustakaan dan / atau layanan sistem operasi untuk mendukung pembangunan aplikasi.
Layanan Web (juga Layanan Web) didefinisikan oleh W3C sebagai "sistem perangkat lunak yang dirancang untuk mendukung interaksi mesin-ke-mesin yang dapat dioperasikan melalui jaringan"
Dalam arti umum, layanan web ADALAH API melalui HTTP. Mereka sering menggunakan JSON atau XML, tetapi ada beberapa pendekatan lain juga.
API adalah antarmuka yang diterbitkan yang mendefinisikan bagaimana komponen A berkomunikasi dengan komponen B.
Misalnya, Doubleclick memiliki Java API yang diterbitkan yang memungkinkan pengguna untuk menginterogasi tabel database untuk mendapatkan informasi tentang kampanye iklan online mereka.
mis. panggil GetNumberClicks (nama pengguna)
Untuk mengimplementasikan API, Anda harus menambahkan file .jar Doubleclick ke jalur kelas Anda. Panggilan itu bersifat lokal.
Layanan web adalah bentuk API di mana antarmuka didefinisikan dengan menggunakan WSDL. Ini memungkinkan panggilan jarak jauh dari suatu antarmuka melalui HTTP.
Jika Doubleclick mengimplementasikan antarmuka mereka sebagai layanan web, mereka akan menggunakan sesuatu seperti Axis2 yang berjalan di dalam Tomcat.
Pengguna jarak jauh akan memanggil layanan web
mis. panggil GetNumberClicksWebService (nama pengguna)
dan layanan GetNumberClicksWebService akan memanggil GetNumberClicks secara lokal.
API (Application Programming Interface), formulir lengkapnya sendiri menunjukkan bahwa ini adalah Interface yang memungkinkan Anda untuk memprogram aplikasi Anda dengan bantuan atau dukungan dari beberapa Antarmuka Aplikasi lain yang memperlihatkan semacam fungsionalitas yang berguna untuk aplikasi Anda.
Misalnya, memperlihatkan nilai tukar mata uang yang diperbarui di situs web Anda akan memerlukan beberapa Antarmuka pihak ketiga untuk diprogram kecuali Anda berencana untuk memiliki basis data Anda sendiri dengan nilai tukar mata uang dan pembaruan reguler yang sama. Serangkaian fungsi ini adalah ketika sudah tersedia dengan orang lain dan ketika mereka ingin membaginya dengan orang lain, mereka harus memiliki titik akhir untuk berkomunikasi dengan orang lain yang tertarik dengan interaksi tersebut sehingga mereka menyebarkannya di web dengan cara web- jasa. Titik akhir ini tidak lain adalah antarmuka aplikasi mereka yang dapat Anda program terhadap API tersebut.
Pikirkan layanan Web sebagai api web. API adalah istilah umum sekarang sehingga layanan web adalah antarmuka untuk fungsionalitas, biasanya yang terkait dengan bisnis, yang dapat Anda peroleh dari jaringan melalui berbagai protokol.
Lihat http://en.wikipedia.org/wiki/Web_service ini
Sebagai tautan yang disebutkan maka Web API adalah pengembangan dalam layanan Web yang kemungkinan besar berhubungan dengan Web 2.0, sedangkan layanan berbasis SOAP digantikan oleh komunikasi berbasis REST. Perhatikan bahwa layanan REST tidak memerlukan definisi API-layanan XML, SOAP, atau WSDL sehingga ini sangat berbeda dengan layanan web tradisional.
contoh lain: google map api vs google direction api layanan web, sedangkan mantan menyajikan (mengirimkan) file javascript ke situs (yang kemudian dapat digunakan sebagai api untuk membuat fungsi baru), yang selanjutnya adalah layanan web Istirahat memberikan data ( dalam format json atau xml), yang dapat diproses (tetapi tidak digunakan dalam arti api).