implementasi-jwt-dengan-php-dan-javascript

Implementasi JWT Dengan PHP dan Javascript

Pada tutorial kali ini saya membahas tentang bagaimana cara mengimplementasikan JWT dengan menggunakan PHP dan Javascript. Tutorial ini melanjutkan pembahasan sebelumnya dimana kita belajar membuat sebuah JWT dengan PHP. Sekarang kita akan membuat JWT sekaligus menyimpan token tersebut agar dapat diverifikasi apakah token sesuai atau tidak.

Untuk studi kasus kali ini kita akan menyimpan Token yang sudah kita generate lalu menyimpannya kedalam file JSON. Kemudian kita akan mengirimkan JWT yang sudah dibuat untuk dicocokkan apakah JWT tersebut sesuai atau tidak.

JWT Dengan PHP dan Javascript #Server Side

Pertama kita akan membuat sebuah class PHP dengan nama Jwt. buat file bernama jwt.class.php, ketikkan script seperti berikut :

Setelah itu, buat deklarasikan terlebih dahulu beberapa property didalam class Jwt seperti nama file dan juga secret key yang akan kita gunakan untuk melakukan generate JWT.

Lalu kita masukkan 2 buah fungsi yaitu generate_jwt() dan juga check_jwt(). generate_jwt() digunakan untuk membuat JWT dengan menggunakan payload dari request yang berasal dari client lalu menyimpannya kedalam file JSON. Sedangkan check_jwt() digunakan untuk memeriksa apakah JWT yang dikirim dari request client sesuai dengan yang ada di dalam file JSON.

generate_jwt()

check_jwt()

Setelah selesai membuat class JWT, sekarang kita membuat sebuah file PHP untuk menampung request dari client dan juga mengeksekusi fungsi yang ada di class tersebut.

server.php

Jadi kita akan membuat 2 buah action yang terdiri yaitu generate dan juga check yang dibuat menjadi sebuah url yaitu :

  1. server.php?act=generate
  2. server.php?act=check

Jika server.php menerima request act yang berisi generate maka sistem akan mengeksekusi fungsi generate_jwt(), begitu juga untuk request check maka sistem akan mengeksekusi fungsi check_jwt().

Setelah kita selesai membuat script untuk bagian backend sekarang kita akan membuat script untuk sisi client yang mengirimkan request ke sisi backend.

client.html

Pada script HTML diatas kita membuat 2 buah form yang terdiri dari form untuk mengirimkan request generate_jwt dan yang satunya lagi adalah form untuk mengirimkan request check_jwt(). Output yang diterima akan ditampilkan di form masing-masing.

Setelah membuat form HTML diatas, sekarang kita buat script JS untuk memproses form tersebut.

jwt.js

Sekarang kita jalankan script diatas.

implementasi-jwt-dengan-php-dan-javascript

Pada contoh gambar diatas, output yang dihasilkan pada form generate JWT adalah JWT yang dikirim dari server.php lalu diterima oleh client dengan mengirimkan request username. Sedangkan untuk Cek JWT, token yang sudah kita buat kita kirim ke sisi server untuk dicek apakah JWT yang dikirim oleh client sesuai dengan yang disimpan oleh server.

Kamu bisa mencoba kode dihalaman Github saya. Silahkan dicoba dan semoga bermanfaat.

Post Author: El Cicko

Nama saya Riky Fahri Hasibuan, Saya yang biasa nulis di blog ini. Blog ini adalah sarana dokumentasi dari apa yang saya kerjakan dan tidak ada salahnya juga saya sebarkan. Jika artikel di blog bermanfaat, kamu bisa memberikan apresiasi pada blog ini dengan memberikan donasi pada blog ini.