Menambahkan JWT Verifikasi node js
# Menambahkan JWT Verifikasi node js
Tutorial ini menjelaskan cara menambahkan middleware jwt verifikasi di node js
## Prasyarat
1. Sebelum memulai, pastikan Anda telah menginstal Node.js dan npm di sistem Anda.
2. Pastikan server sso laravel telah berjalan
3. Pastikan telah berhasil mengimplementasikan login sso client
## Langkah-langkah
### 1. Instal Dependensi
Pertama, pastikan untuk menginstal semua dependensi yang diperlukan dengan menjalankan perintah berikut di terminal:
npm install jsonwebtoken
### 2. Buat Aplikasi Node.js
Buatlah file JavaScript untuk middleware verifikasi, misalnya `verify.js`.
### 3. Konfigurasi Middleware
Tambahkan kode berikut ke dalam file `verify.js` Anda:
const jwt = require('jsonwebtoken');
const fs = require('fs');
// Mendapatkan kunci publik dari file (dalam kasus ini, file berisi kunci publik dalam format PEM)
const publicKey = fs.readFileSync('oauth-public.key', 'utf8');
// Fungsi middleware untuk verifikasi token JWT
function verifyToken(req, res, next) {
// Mendapatkan token dari header permintaan
const token = req.session.accessToken;
// Memeriksa apakah token tersedia
if (token == undefined) {
return res.status(401).json({
status : false,
message: 'silahkan login terlebih dahulu',
});
}
// Melakukan verifikasi token
jwt.verify(token, publicKey, function(err, decoded) {
if (err) {
return res.status(403).json({
status : false,
message: 'Token tidak valid.',
error : err
});
}
req.user = decoded; // Menyimpan informasi pengguna dari token di objek permintaan
next(); // Lanjutkan ke middleware atau pengendali berikutnya
});
}
module.exports = verifyToken;
### 4. Menambahkan Middleware ke route
Tambahkan middleware kedalam route:
app.use('/protected',verifyToken)
app.get('/protected/getuser',(req,res)=>{
res.send(req.user)
})
### 6. Menjalankan Aplikasi
Terakhir, jalankan aplikasi Node.js Anda dengan menjalankan perintah berikut di terminal:
node app.js