Authentication API

Authentication API diperlukan untuk menjaga website dari pengunjung yang tidak memiliki akses ke halaman tertentu. Proses autentikasi biasanya dilakukan oleh API dan didukung oleh front end untuk mendapatkan informasi credential user (umumnya username dan password).

Authentication Token
  1. Token biasanya digunakan pada proses autentikasi untuk mengetahui apakah seorang user sudah login atau belum tanpa perlu mengetahui credential dari user.
  2. Token umumnya berbentuk string yang sudah di enkripsi dengan algoritma tertentu untuk mengamankan informasi yang terkandung di dalamnya
  3. Token yang popular digunakan untuk proses autentikasi adalah JSON Web Token (JWT)

Context API

  1. Ketika kita tidak menggunakan provider untuk menyimpan token, kita dapat memanfaatkan Context API
  2. Context API terdiri dari useContext dan createContext
  3. Sebagai contoh, kita dapat membuat context bernama AuthContext untuk mengakses dan menyimpan tokenAuthentication API
  4. Kita dapat mendeklarasikan AuthContext dan state untuk auth context agar data kita menjadi lebih dinamisAuthentication API

Private Route
  1. Pada React kita bisa membatasi akses user dengan membuat komponen Private Route untuk mengecek apakah user yang bersangkutan sudah memiliki token
  2. Redirect dapat digunakan untuk mengarahkan ke halaman login ketika user belum memiliki tokenAuthentication API

Authentication API
  1. Untuk proses pengiriman credential ke Auth API, kita dapat menggunakan AJAX (fetch atau axios)
  2. Pastikan metode request yang digunakan adalah HTTP POST agar data credential user tidak dapat terbaca saat pengiriman request
  3. Agar user tidak perlu login berulang kali, pastikan untuk menyimpan user token setelah login dan menghapusnya setelah logout

Kesimpulan

Untuk proses Authentication API dapat memanfaatkan AJAX, Context, Token, dan PrivateRoute