Mengenal Web API - Apa itu Web API?

Web APIs

Untuk pengenalan modul ini kita tentunya sudah memahami bagaimana AJAX dapat menampilkan informasi yang dinamis pada aplikasi kita. Tapi kita belum mengetahui dari mana sumber data tersebut berasal? Bagaimana cara untuk mengaksesnya? Guna menjawab itu semua, mari berkenalan dengan Web API.

Web API (Application Programming Interface) adalah interface yang disediakan oleh penyedia data agar data yang  miliki dapat dimanfaatkan atau dipergunakan dengan mudah pada banyak aplikasi, baik itu aplikasi web, mobile, desktop ataupun lainnya.
Penyedia data yang telah membangun Web API mempunyai keuntungan karena proses dalam pengembangan aplikasi menjadi lebih efisien. Mengapa begitu? Karena cukup dengan satu Web API, data dapat dikonsumsi pada berbagai macam platform seperti yang sudah disebutkan di atas.
2020031322462248e1afa1ef73e3da2e43e6f7bcfb5c7a.png

Pada gambaran di atas, Web API bekerja menggunakan salah satu pola standar yakni REST (Representational State Transfer). Pola inilah yang saat ini umum banyak digunakan karena simpel dan mudah dipelajari daripada pola yang lainnya. Jenis data yang received atau dikirimkan pada pola REST dapat berupa format text, JSON atau XML.
Pola REST hampir semuanya menggunakan HTTP dalam transaksi datanya. Sehingga untuk melakukan komunikasi dengan Web API ini, client (aplikasi) harus membuat HTTP request pada endpoint (URL) yang telah ditentukkan. Umumnya penyedia data juga menetapkan HTTP Request Method yang berbeda pada setiap endpointnya.
Terdapat banyak sekali tipe/method dalam melakukan HTTP Request, namun terdapat 4 (empat) method umum dan penting yang biasanya digunakan pada Web API dalam melakukan transaksi data.
  • GET : Digunakan guna mengambil informasi dari Web API.
  • POST : Digunakan guna menambahkan data.
  • PUT : Digunakan guna mengubah data.
  • DELETE : Digunakan guna menghapus data.
Setelah client membuat atau create HTTP request pada Web API, maka Web API akan mengembalikan HTTP response dari request yang dibuat tadi. Pada response terdapat status kode yang menampilkan apakah request yang kita lakukan di accept atau berhasil ataupun juga gagal. Berikut ini beberapa status kode yang dapat dihasilkan dari HTTP Response pada Web API beserta artinya.
  • 200 (OK) : Berarti Request berhasil dipenuhi oleh server (Web API).
  • 400 (Bad Request) : Berarti Server tidak mengerti request yang dikirimkan client.
  • 401 (Unauthorized) : Berarti Request membutuhkan authorization.
  • 403 (Forbidden) : Berarti Server mengerti request dari client namun menolak untuk memprosesnya karena request tersebut tidak boleh dilakukan.
  • 404 (Not Found) : Berarti Resource yang client minta, tidak ditemukan.
  • 500 (Server Error) : Berarti Server mengalami kendala untuk memproses request.
Banyak penyedia data yang menyediakan Web API secara gratis cuma-cuma atau dapat dikonsumsi umum. Namun ada juga penyedia data yang membangun Web API yang hanya dipergunakan untuk keperluan internal saja. Umumnya jika kita mengakses Web API yang sifatnya private, kita akan terhalangi oleh CORS (cross-origin resource sharing

CORS

Sebelum kita lanjut untuk mencoba langkah-langkah mengakses Web API, ada kalanya  kita harus mengetahui terlebih dahulu perihal keamanan. Dalam transaksi menggunakan Web API menggunakan AJAX kita bisa melihat request yang dibuat dan response yang dihasilkan melalui Network tabs pada DevTools.
20200313224809099128c193bbc451d3759397de0d6025.png
Hal tersebut dikarenakan AJAX diproses pada sisi client sehingga pengguna dapat dengan leluasa untuk melihat dan mengontrolnya. Maka dengan alasan masalah keamanan ketika kita melakukan AJAX baik menggunakan dengan XHR atau Fetch, kita hanya diperbolehkan melakukan request dari domain yang sama.
Contohnya ketika kita ingin mengakses API yang bersumber dari google.com/api maka kita sebagai client perlu menjadi google.com. Jika kita berasal dari domain yang berbeda bukan google.com, contohnya bing.com maka kita tidak dapat menggunakan AJAX pada google.com/api. Hal ini umumnya dikenal sebagai same-origin policy.
Tapi jika memang Web API tersebut diperbolehkan untuk dikonsumsi umum bukan internal saja maka berarti penyedia data harus menerapkan teknologi yang dinamakan CORS (Cross-Origin Resource Sharing) pada servernya. 
Server yang menyediakan Web API menggunakan CORS dapat dipergunakan secara umum dan mengelakkan kebijakan same-origin guna mengakses informasi yang ada di dalamnya

Test a Web API using Postman

Lalu apa yang perlu Anda lakukan sebelum mencoba Web API menggunakan AJAX? Guna mempelajari atau menguji sebuah Web API, developer menggunakan tools atau software yang bernama Postman. Postman merupakan GUI API Caller yang dapat membuat HTTP Request dengan method yang lengkap seperti GETPOSTPUTDELETE dan lainnya.
Postman adalah tools yang sangat cocok untuk menguji sebuah Web API karena terdapat fungsi yang relatif lengkap sebagai API caller dalam melakukan atau melaksanakan HTTP Request. Pada Postman kita bisa menetapkan parameter dan mengirimkan data pada body atau header request dengan mudah, tanpa memerlukan kode.
Postman dapat diakses secara gratis dan dapat berjalan pada sistem operasi Windows, Linux maupun MacOS. Untuk mendapatkan aplikasi Postman, kita bisa mengunduhnya melalui link berikut : https://www.postman.com.
202003132250278ee3046b28571ea08248c18a8e7417bf.png
Setelah melakukan pengunduhan, selanjutnya silakan Anda pasang aplikasi postman pada komputer. Saat  selesai Anda bisa langsung membukanya dan langsung membuat akun.
2020031322505168bdc63b88a0a8016d0fa0f2e4aa6520.png
Ketika pertama kali membuka aplikasi Postman, kita harus login atau registrasi untuk memiliki akun. Setelah berhasil login atau mendaftar, tampilan pada halaman utamanya seperti ilustrasi dibawah:
20200313225118a91df05b0a17ef9fc809985aa27a71b6.png
Guna melakukan sebuah HTTP Request kita bisa memilih menu “create a request” yang tersedia pada halaman tersebut.
20200313225142ca222609d25b934d654c583a6ad2bdae.png
Kemudian untuk mengirimkan request kita perlu tentukan dulu endpoint (request URL) mana yang akan kita tuju pada kolom yang sudah tersedia. Kita akan mencoba melakukan request pada Web API dengan menggunakan endpoint berikut: https://web-server-book-dicoding.appspot.com/list
202003132252316324bd0c0171af9c247588f079a45e08.png
Setelah mengisikan request URL-nya kita coba tekan tombol “Send”. Maka respon yang akan kita dapatkan adalah daftar buku dalam bentuk JSON.
202003132252561d2ed5fd42e7c2b84d25fe56b9c32f5a.png
Jika penyedia data menyediakan Web API secara terbuka atau dapat diakses  umum, umumnya si penyedia data akan membuat sebuah dokumentasi cara penggunaan API. Di sana kita dapat menemukan informasi endpoint mana saja yang bisa kita akses, method apa saja yang diperlukan, ataupun format atau struktur seperti apa yang perlu diterapkan untuk mengirim data. Dokumentasi tersebut sangat teramat penting karena melalui itulah seorang developer tahu bagaimana ia bisa memanfaatkan Web API tersebut.
Dokumentasi dari Web API yang kita gunakan pada contoh di atas dapat andalihat pada tautan atau link berikut ini : https://web-server-book-dicoding.appspot.com/.
20200313225338bb74016a898e8187cf6da8c639a2b667.png
Dari dokumentasi yang tertera kita menjadi tahu ternyata kita dapat menambahkan data buku baru dengan mengakses endpoint /addnya. Dari sana juga kita bisa melihat method, headers, serta body apa yang sekiranya perlu kita terapkan dalam melakukan request tersebut. Sehingga kita dapat menjajal atau mencobanya  pada Postman.
202003132254066304010fc29b90c06fd0f8993840fefe.png
Anda juga bisa mengakses atau mencoba fungsi lain seperti menghapus atau mengubah data buku melalui Web API tersebut. Jika Anda masih belum terlalu paham dan terbiasa dengan Postman, terdapat artikel yang cukup bagus sebagai panduan menggunakan Postman untuk Pemula, anda bisa melihatnya melalui link berikut : https://www.guru99.com/postman-tutorial.html

Terimakasih Semoga bermanfaat !!


Baca Juga :   Tips dan Trik untuk Mempercepat Perangkat Anda


About the Author

Rudi Kilam merupakan seorang pelajar yang mempunyai keinginan dan memiliki minat menulis sebuah artikel terkait dengan pengetahuan umum, IT, kesehatan, ekonomi, sosiologi, pembudidayaan dan lain sebagainya.
Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.
Site is Blocked
Sorry! This site is not available in your country.