Selasa, 28 April 2020

Apa itu Web API?

Apa itu Web API?

Web APIs

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

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

Pada ilustrasi di atas, Web API bekerja menggunakan salah satu pola standar yaitu REST (Representational State Transfer). Pola inilah yang saat ini banyak digunakan karena simpel dan mudah dipelajari daripada pola yang lainnya. Jenis data yang diterima atau dikirimkan pada pola REST dapat berupa format text, JSON atau XML.
Pola REST hampir sepenuhnya menggunakan HTTP dalam transaksi datanya. Sehingga untuk berkomunikasi dengan Web API ini, client (aplikasi) harus membuat HTTP request pada endpoint (URL) yang telah ditentukkan. Biasanya penyedia data juga menetapkan HTTP Request Method yang berbeda pada setiap endpoint-nya.
Terdapat banyak tipe/method dalam melakukan HTTP Request, namun terdapat 4 (empat) method penting yang biasanya digunakan pada Web API dalam melakukan 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.
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 GETPOSTPUTDELETE 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

Senin, 27 April 2020

Contoh Penggunaan Default Parameters Di Javascript

Contoh Penggunaan Default Parameters Di Javascript

Dengan menggunakan default parameters, nilai pada parameter tidak akan menghasilkan undefined walaupun kita tidak memberikan nilai ketika fungsi tersebut dipanggil. Default parameter dapat digunakan pada regular function ataupun arrow function.

Berikut contoh dari penggunaan default parameter:

  1. function sayHello(name = "Stranger", greet = "Hello") {

  2.     console.log(`${greet} ${name}!`);

  3. }

  4.  

  5. sayHello("Dimas", "Hai");

  6. sayHello();

  7.  

  8. /* output:

  9. Hai Dimas!

  10. Hello Stranger!

  11. */



  1. const sayHello = (name = "Stranger", greet = "Hello") => console.log(`${greet} ${name}!`);

  2.  

  3.  

  4. sayHello("Dimas", "Hai");

  5. sayHello();

  6.  

  7.  

  8. /* output:

  9. Hai Dimas!

  10. Hello Stranger!

  11. */



Pada contoh di atas, kita menggunakan tanda assignment (=) untuk menetapkan parameter name dengan nilai default “Stranger”, dan parameter greet dengan nilai default “Hello”. Hal ini sangat berguna ketika kita memanggil fungsi sayHello() tanpa menetapkan nilai parameter di dalamnya, karena walaupun kita tidak menetapkan nilainya, kedua parameter tersebut tidak akan menghasilkan undefined.

Minggu, 23 Juni 2019

Cara Membuat Efek Blur Pada Background Foto

Cara Membuat Efek Blur Pada Background Foto





Artikel ini menjelaskan Cara Membuat Efek Blur Pada Background Foto atau gambar dengan bantuan aplikasi yang bernama Snapseed. Dengan aplikasi ini Agan bisa memberi efek blur/buram pada background suatu gambar atau foto.

Agan sudah pasti tahu, sekarang mode potret alias bokeh adalah salah satu trik fotografi yang paling dicari. Sebelumnya menangkap gambar dalam mode potret hanya dimungkinkan

Kamis, 20 Juni 2019

Cara Mengaktifkan Fitur Tersembunyi Kamera Samsung Galaxy S10

Cara Mengaktifkan Fitur Tersembunyi Kamera Samsung Galaxy S10





Pada tutorial ini semutsujud sujud membahas cara mengaktifkan fitur tersembunyi kamera Samsung Galaxy S10 | S10 Plus | S10e. Apa saja fitur fitur tersembunyi tersebut? Baca tutorial ini sampai selesai yach!!

Samsung Galaxy S10 memiliki kamera yang hebat meskipun jauh dari klaim sebagai kamera smartphone terbaik. Samsung benar-benar harus meningkatkan fitur fitur terbarunya dengan flagship

Senin, 27 Mei 2019

Mengecilkan ukuran video tanpa mengurangi kualitas

Mengecilkan ukuran video tanpa mengurangi kualitas







Clipchamp adalah website gratis untuk mengecilkan ukuran file video, merekam, compres, dan mengkonversi video tanpa mengurangi kualitas video. Yang paling penting tentang Clipchamp ini adalah cukup jalankan pada browser Anda, tetapi bisa memproses video pada PC Anda artinya anda tidak perlu mendownloadnya.


Itu berarti, tidak anda tidak perlu menghabiskan waktu lebih lama untuk meng-upload

Sabtu, 20 April 2019

Cara Daftar Internet Banking BCA Melalui ATM

Cara Daftar Internet Banking BCA Melalui ATM




Cara Daftar Internet Banking BCA Melalui ATM. | BCA sekarang telah meningkatkan layanannya kepada nasabah, salah satunya adalah nasabah bisa mendaftar internet banking cukup lewat ATM di tempat terdekat nasabah tanpa harus mengantri di Bank. Yups, Sekarang Agan bisa daftar Internet banking BCA tanpa harus ke Bank BCA lagi.

Internet banking BCA atau yang bisa dikenal dengan KlikBCA adalah

Rabu, 03 April 2019

Cara Download Video Reddit

Cara Download Video Reddit




Berikut adalah cara download video reddit dengan bantuan 4 situs web Reddit video downloader online gratis. Semua situs ini membantu Agan untuk mengunduh video Reddit dengan memasukkan URL video. Sebagian besar situs ini memungkinkan Agan menyimpan video Reddit v.redd.it.

Masing-masing situs web Reddit video downloader ini memiliki beberapa fitur yang sangat bagus. Misalnya, Agan dapat

Sabtu, 30 Maret 2019

Cara Live Streaming Di Twitch Dari PS4/Xbox One/PC

Cara Live Streaming Di Twitch Dari PS4/Xbox One/PC




Cara Live Streaming Di Twitch Dari PS4/Xbox One/PC.| Twitch adalah salah satu platform terhebat untuk live streaming video game online. Ini pada dasarnya dimiliki oleh anak perusahaan Amazon, Twitch Interactive. Jutaan orang mengunjungi Twitch setiap bulan sebagai pemirsa. Meski hanya menonton, Agan juga bisa menjadi salah satu dari Twitch Streamer. Apakah Agan ingin tahu cara streaming game

Kamis, 28 Maret 2019

Cara Kirim SMS ke Luar Negeri Secara Gratis

Cara Kirim SMS ke Luar Negeri Secara Gratis




Pada artikel ini saya akan share cara kirim SMS ke luar negeri secara gratis dengan bantuan 5 situs gratis SMS sender. Meskipun kecenderungan untuk mengirim SMS (sort message service)  telah menunjukkan penurunan dalam beberapa tahun terakhir, terutama ketika mulai menjamurnya  aplikasi pesan instan, SMS masih banyak digunakan karena memiliki kegunaan praktis dan tetap menjadi alternatif

Sabtu, 23 Maret 2019

Cara Mencari Hotel Terdekat dan Termurah Menggunakan Google Hotels

Cara Mencari Hotel Terdekat dan Termurah Menggunakan Google Hotels




Dalam artikel ini, kita akan membahas cara mencari hotel terdekat dan termurah menggunakan Google Hotels dan kita juga akan memandu Agan alur untuk proses pemesanan hotel melalui platform ini.

Bukan tanpa alasan bahwa Google adalah mesin pencari yang paling banyak digunakan di internet. Algoritma mereka melakukan pekerjaan yang sangat baik untuk menunjukkan kepada Agan hasil terbaik. Dan
Tips Mencari Tiket Pesawat Termurah Dengan Google Flights

Tips Mencari Tiket Pesawat Termurah Dengan Google Flights




Dalam tutorial ini, saya akan share segala sesuatu yang perlu diketahui tentang tips mencari tiket pesawat termurah dengan Google flights (penerbangan), dari dasar-dasar pemesanan penerbangan hingga menemukan tarif termurah dan terbaik untuk perjalanan Agan.

Bepergian dengan pesawat adalah salah satu pengeluaran terbesar untuk perjalanan domestik maupun internasional dan tergantung pada

Rabu, 20 Maret 2019

Cara Menyembunyikan Retweet Twitter [Android/iOS/PC]

Cara Menyembunyikan Retweet Twitter [Android/iOS/PC]




Retweet adalah fitur seperti berbagi yang memungkinkan Agan membagikan tweet orang lain di timeline Twitter Agan. Pada artikel ini kita akan membahas tutorial cara menyembunyikan retweet di Twitter baik di versi Android/iOS/PC/situs web resmi. Dengan menjalankan tutorial ini, Agan mungkin tidak akan update beberapa hal, seperti: berita, lelucon, dan pembaruan, tetapi jika Agan bosan dengan

Sabtu, 16 Maret 2019

Cara Menggunakan Google Duo di PC Desktop

Cara Menggunakan Google Duo di PC Desktop




Dalam tutorial ini, kita akan membahas cara menggunakan Google Duo di PC Desktop. Google akhirnya meluncurkan aplikasi web yang memungkinkan pengguna untuk menggunakan Google Duo di PC desktop. Google Duo adalah salah satu aplikasi dari Google yang berhasil bertahan hingga saat ini seperti Google Keep, Snapseed, dll.

Google Duo dianggap sebagai salah satu aplikasi panggilan video terbaik di

Rabu, 20 Februari 2019

Cara Menggunakan Google Docs, Spreadsheet, slide Secara Offline

Cara Menggunakan Google Docs, Spreadsheet, slide Secara Offline




Di artikel ini saya akan share Cara Menggunakan Google Docs, Spreadsheet, slide Secara Offline. Ketika berbicara tentang aplikasi pengolah kata, Microsoft Word sejauh ini adalah program pertama yang ada dalam pikiran kita. Ya, Microsoft Word, karena Microsoft Office luar biasa dan mengemas hampir semua yang dibutuhkan sebagian besar pengguna untuk aktivitas sehari-hari di kantor. Tapi anda

Selasa, 12 Februari 2019

Tips Mencari Gambar Wallpaper Keren Di Google

Tips Mencari Gambar Wallpaper Keren Di Google




Wallpaper default yang disertakan pada komputer, ponsel, atau tablet Anda tidak selalu buruk, tetapi jika Anda ingin memberikan tampilan unik pada perangkat Anda, menggunakan wallpaper khusus adalah pilihan terbaik.

Selain sebagai hiasan di desktop komputer, kadang Wallpaper bisa menumbuhkan semangat baru ketika bekerja di depan komputer. Tampilan yang monoton gampang menimbulkan kejenuhan,

Sabtu, 19 Januari 2019

Memperbesar gambar / foto hingga 400% tanpa mengurangi kualitas

Memperbesar gambar / foto hingga 400% tanpa mengurangi kualitas





Reshade Image Enlarger adalah perangkat lunak yang sangat berguna dan gratis yang dapat memperbesar gambar hingga 400%. Perangkat lunak ini dikenal sebagai "foto pembesar ". Sesuatu bagian terbaik dari perangkat lunak ini adalah Anda tidak akan menghadapi masalah kualitas. Di beberapa software lainnya yang juga berfungsi untuk memperbesar gambar, tetapi kualitas output dari software hanya