.:[Close][Klik 2x]:.
Apa itu Web API ? - Keituber
SoftwareTeknologi

Apa itu Web API ?

Web APIs

keituber.com Pada pengenalan modul ini, kita sudah memahami bagaimana AJAX dapat menampilkan data dinamis pada aplikasi kita. Tapi kita tidak tahu sumber datanya dari mana? Bagaimana cara mengaksesnya? Untuk menjawab semua pertanyaan, mari kita lihat Web API.

Web API (Application Programming Interface) adalah antarmuka pengguna yang disediakan oleh penyedia data, yang datanya dapat dengan mudah digunakan di banyak aplikasi, baik itu web, seluler, desktop, atau aplikasi lainnya. Penyedia data yang telah membangun web API memiliki keuntungan karena proses pengembangan aplikasi menjadi lebih efisien. Mengapa? Karena hanya satu API web yang cukup, data dapat dikonsumsi di berbagai platform seperti yang disebutkan di atas.

Pada gambar di atas, Web API bekerja dengan salah satu model standar yaitu REST (Representational State Transfer). Model ini saat ini banyak digunakan karena lebih sederhana dan mudah dipelajari dibandingkan model lainnya. Pada pola REST, tipe data yang diterima atau dikirim bisa berupa teks, JSON, atau XML.

Model REST menggunakan HTTP hampir secara eksklusif untuk transaksi datanya. Jadi untuk berkomunikasi dengan web API ini, klien (aplikasi) harus mengirimkan permintaan HTTP ke titik akhir (URL) yang ditentukan. Biasanya, penyedia data juga menentukan metode permintaan HTTP yang berbeda untuk setiap endpointnya.

Ada banyak cara/metode untuk membangun permintaan HTTP, tetapi ada 4 (empat) metode utama yang umum digunakan dalam web API untuk transaksi data.

  • GET : Digunakan untuk mengambil informasi dari Web API.
  • POST : Digunakan untuk menambahkan data.
  • PUT : Digunakan untuk mengubah data.
  • DELETE : Digunakan untuk menghapus data.

Setelah client membuat HTTP request pada Web API, maka Web API akan mengembalikan HTTP response. Pada response terdapat status kode yang menunjukkan apakah request yang kita lakukan berhasil atau gagal. Berikut beberapa status kode yang dapat dihasilkan dari HTTP Response pada Web API.

  • 200 (OK) : Request berhasil dipenuhi oleh server (Web API).
  • 400 (Bad Request) : Server tidak mengerti request yang dikirimkan client.
  • 401 (Unauthorized) : Request membutuhkan authorization.
  • 403 (Forbidden) : Server mengerti request dari client namun menolak untuk memprosesnya karena request tersebut tidak boleh dilakukan.
  • 404 (Not Found) : Resource yang client minta, tidak ditemukan.
  • 500 (Server Error) : Server mengalami kendala untuk memproses request.

Banyak penyedia data yang menyediakan Web API secara cuma-cuma atau dapat dikonsumsi umum. Namun ada juga penyedia data yang membangun Web API yang hanya digunakan untuk keperluan internal saja. Biasanya jika kita mengakses Web API yang sifatnya private, kita akan terhalangi oleh CORS

 (cross-origin resource sharing

CORS

Sebelum kita mencoba langkah-langkah mengakses Web API, ada hal yang harus kita ketahui terlebih dahulu perihal keamanan. Dalam transaksi menggunakan Web API menggunakan AJAX kita dapat melihat request yang dibuat dan response yang dihasilkan melalui Network tabs pada DevTools.l

20200313224809099128c193bbc451d3759397de0d6025.png

Hal tersebut disebabkan AJAX diproses pada sisi client sehingga pengguna dapat leluasa untuk melihat dan mengontrolnya. Maka dengan alasan keamanan ketika kita melakukan AJAX baik menggunakan dengan XHR atau Fetch, kita hanya diperbolehkan melakukan request dari domain yang sama.

Contoh jika 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, contohnya bing.com maka kita tidak dapat menggunakan AJAX pada google.com/api. Hal ini dikenal sebagai same-origin policy.

Namun jika memang Web API tersebut diperbolehkan untuk dikonsumsi umum berarti penyedia data harus menerapkan teknologi yang dinamakan CORS (Cross-Origin Resource Sharing) pada server-nya. 

Server yang menyediakan Web API menggunakan CORS dapat digunakan secara umum dan mengelakkan kebijakan same-origin guna mengakses informasi yang ada di dalamnya

Test a Web API using Postman

Apa yang perlu Anda lakukan sebelum mencoba Web API menggunakan AJAX? Untuk mempelajari atau menguji sebuah Web API, developer menggunakan tools yang bernama Postman. Postman adalah GUI API Caller yang dapat membuat HTTP Request dengan method yang lengkap seperti GET

POST

PUT

DELETE

 dan lainnya.

Postman merupakan tools yang sangat cocok untuk menguji sebuah Web API karena terdapat fungsi yang relatif lengkap sebagai API caller dalam melakukan HTTP Request. Pada Postman kita dapat menetapkan parameter dan mengirimkan data pada body atau header request dengan mudah, tanpa memerlukan kode.

Postman tersedia secara gratis dan dapat berjalan pada sistem operasi Windows, Linux maupun MacOS. Untuk mendapatkan aplikasi Postman, kita bisa mengunduhnya melalui https://www.postman.com.

202003132250278ee3046b28571ea08248c18a8e7417bf.png

Setelah mengunduhnya, silakan Anda pasang aplikasi postman pada komputer. Saat  selesai Anda bisa langsung membukanya.

2020031322505168bdc63b88a0a8016d0fa0f2e4aa6520.png

Ketika pertama kali membuka aplikasi Postman, kita perlu login atau registrasi untuk memiliki akun. Setelah berhasil login, berikut tampilan pada halaman utamanya:

20200313225118a91df05b0a17ef9fc809985aa27a71b6.png

Untuk melakukan sebuah HTTP Request kita dapat memilih menu “create a request” yang tersedia pada halaman tersebut.

20200313225142ca222609d25b934d654c583a6ad2bdae.png

Kemudian untuk mengirimkan request kita tentukan dulu endpoint (request URL) mana yang akan kita tuju pada kolom yang sudah tersedia. Kita akan mencoba melakukan request pada Web API dengan endpoint berikut: https://web-server-book-dicoding.appspot.com/list

202003132252316324bd0c0171af9c247588f079a45e08.png

Setelah mengisikan request URLnya coba kita tekan tombol “Send”

. Maka respon yang akan didapatkan adalah daftar buku dalam bentuk JSON.

202003132252561d2ed5fd42e7c2b84d25fe56b9c32f5a.png

Jika penyedia data menyediakan Web API secara terbuka atau dapat diakses  umum, biasanya ia akan membuat sebuah dokumentasi cara penggunaan API. Di sana kita dapat menemukan informasi endpoint mana saja yang dapat kita akses, method apa saja yang diperlukan, ataupun format atau struktur seperti apa yang perlu diterapkan untuk mengirim data. Dokumentasi tersebut sangatlah penting karena melalui itulah seorang developer jadi tahu bagaimana ia bisa memanfaatkan Web API tersebut.

Dokumentasi dari Web API yang kita gunakan pada contoh di atas dapat kita lihat pada tautan berikut https://web-server-book-dicoding.appspot.com/.

20200313225338bb74016a898e8187cf6da8c639a2b667.png

Dari dokumentasi tersebut kita menjadi tahu ternyata kita dapat menambahkan data buku baru dengan mengakses endpoint /add

. Di sana juga kita bisa melihat method, headers, serta body apa yang perlu kita terapkan dalam melakukan request tersebut. Sehingga kita dapat mencobanya pada pada Postman.

202003132254066304010fc29b90c06fd0f8993840fefe.png

Anda juga bisa mencoba fungsi lain seperti menghapus atau mengubah data buku melalui Web API tersebut. Jika Anda masih belum terbiasa dengan Postman, terdapat artikel yang cukup bagus sebagai panduan menggunakan Postman untuk Pemula. https://www.guru99.com/postman-tutorial.html

Related Articles

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Back to top button