Tahun baru, skill baru! 🚀. Masukkan kupon "skill2025" untuk diskon 30% di kelas apa saja

Logo Koala Skodev mengetik

Skodev

Belajar coding dalam bahasa Indonesia

MEMBUAT OTORISASI ENDPOINT DI API NODE.JS

Pelajari cara membuat otorisasi endpoint di API Node.js dengan langkah mudah dan sederhana.

Daftar Isi:

Menyiapkan Proyek
Membuat Middleware Otorisasi
Membuat dan Mengelola Token
Kesimpulan

Saat membangun aplikasi berbasis API, salah satu aspek penting yang harus diperhatikan adalah otorisasi. Otorisasi memastikan bahwa hanya pengguna yang berhak yang dapat mengakses endpoint tertentu. Pada artikel ini, kita akan membahas cara membuat otorisasi endpoint di API Node.js.

Menyiapkan Proyek

Pertama-tama, pastikan kamu memiliki proyek Node.js yang sudah berjalan. Jika belum, kamu bisa membuat proyek baru dengan perintah:

npm init -y
npm install express jsonwebtoken

express digunakan untuk membuat server, sedangkan jsonwebtoken membantu dalam menangani token otorisasi.

Membuat Middleware Otorisasi

Untuk mempermudah otorisasi, kita akan membuat middleware khusus. Middleware ini akan memeriksa apakah pengguna memiliki akses ke endpoint yang diminta.

Buat file, misalnya authMiddleware.js, dan tambahkan kode berikut:

const jwt = require('jsonwebtoken');

function authMiddleware(req, res, next) {
  const token = req.header('Authorization');
  if (!token) return res.status(401).send('Akses ditolak. Token tidak disertakan.');

  try {
    const verified = jwt.verify(token, 'secretKey');
    req.user = verified;
    next();
  } catch (error) {
    res.status(400).send('Token tidak valid.');
  }
}

module.exports = authMiddleware;

Integrasikan Middleware ke dalam Server

Integrasikan authMiddleware ke rute yang perlu otorisasi di server express kamu. Misalnya:

const express = require('express');
const authMiddleware = require('./authMiddleware');

const app = express();

app.get('/protected', authMiddleware, (req, res) => {
  res.send('Selamat datang di area yang dilindungi!');
});

app.listen(3000, () => console.log('Server berjalan di port 3000'));

Membuat dan Mengelola Token

Membuat Token

Kamu bisa membuat token JWT saat pengguna melakukan login atau mendaftar. Contoh:

const jwt = require('jsonwebtoken');

function login(req, res) {
  // Verifikasi kredensial pengguna...
  const token = jwt.sign({ _id: user._id }, 'secretKey', { expiresIn: '1h' });
  res.send({ token });
}

Menyimpan dan Menggunakan Token

Setelah mendapatkan token, pengguna perlu menyimpannya dan menyertakannya di header setiap permintaan API yang memerlukan otorisasi. Gunakan header Authorization untuk ini.

Kesimpulan

Dengan langkah-langkah ini, kamu bisa mengamankan endpoint API menggunakan otorisasi berbasis token JWT. Memahami dan menerapkan otorisasi yang baik sangat penting dalam menjaga keamanan aplikasi kamu. Mulailah dengan mengimplementasikan contoh sederhana ini dan kembangkan sesuai dengan kebutuhan spesifik aplikasimu.


Daftar newsletter skodev masukkan emailmu untuk dapat informasi menarik dari dunia koding