Tahun baru, skill baru! 🚀. Masukkan kupon "skill2025" untuk diskon 30% di kelas apa saja
Skodev
Belajar coding dalam bahasa Indonesia
Dalam pengembangan aplikasi Node.js, middleware adalah bagian penting yang membantu memproses permintaan dan menyediakan logika sebelum mencapai penanganan utamanya. Kamu bisa membuat middleware tanpa bergantung pada framework seperti Express. Berikut adalah panduan sederhana untuk melakukannya.
Middleware pada dasarnya adalah fungsi yang memiliki akses ke objek permintaan (request
), objek tanggapan (response
), dan middleware berikutnya. Middleware digunakan untuk berbagai alasan, seperti logging, otentikasi, dan pemrosesan izin.
Langkah-langkah berikut akan membantumu membuat middleware tanpa Express:
Siapkan Server HTTP:
Pertama, siapkan server HTTP dasar menggunakan modul http
bawaan Node.js.
const http = require('http');
const server = http.createServer((req, res) => {
// Logic penanganan akan diletakkan di sini
});
server.listen(3000, () => {
console.log('Server berjalan di http://localhost:3000');
});
Buat Fungsi Middleware:
Middleware merupakan fungsi sederhana yang menerima parameter req
, res
, dan next
.
function middleware(req, res, next) {
console.log(`Permintaan metode: ${req.method}, URL: ${req.url}`);
next(); // Panggil fungsi next untuk melanjutkan ke penangan selanjutnya
}
Gunakan Middleware:
Terapkan middleware tersebut dengan memanggilnya di dalam logika penanganan server.
const http = require('http');
function middleware(req, res, next) {
console.log(`Permintaan metode: ${req.method}, URL: ${req.url}`);
next();
}
const server = http.createServer((req, res) => {
middleware(req, res, () => {
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end('Halo, Dunia!');
});
});
server.listen(3000, () => {
console.log('Server berjalan di http://localhost:3000');
});
Dengan cara ini, kamu telah berhasil menerapkan middleware sederhana yang memproses permintaan HTTP sebelum menanggapinya. Kamu bisa menambahkan logika lebih lanjut dalam middleware untuk memperluas fungsionalitas aplikasi Node.js yang kamu kembangkan.
Link terkait: