Adding Router Middleware and Logger to Express.js Tutorial with Typescript

Posted by

Tutorial Express JS Dengan TypeScript – Menambahkan Router Middleware dan Logger

Tutorial Express JS Dengan TypeScript – Menambahkan Router Middleware dan Logger

Express JS adalah salah satu framework web paling populer untuk Node.js. TypeScript adalah bahasa pemrograman yang dapat membuat kode JavaScript menjadi lebih aman dan mudah dipahami. Dalam tutorial ini, kami akan membahas cara menambahkan router middleware dan logger ke aplikasi Express JS dengan menggunakan TypeScript.

Langkah 1: Persiapan Proyek

Langkah pertama yang perlu dilakukan adalah mempersiapkan proyek TypeScript. Anda dapat membuat proyek baru dengan menjalankan perintah berikut:


npm init -y
npm install express body-parser morgan typescript ts-node @types/node @types/express @types/morgan

Langkah 2: Membuat Server Express

Selanjutnya, buat file `app.ts` dan tambahkan kode berikut:


import express, { Request, Response } from 'express';
import morgan from 'morgan';

const app = express();
const port = 3000;

app.use(morgan('dev'));

app.get('/', (req: Request, res: Response) => {
res.send('Hello World!');
});

app.listen(port, () => {
console.log(`Server berjalan di http://localhost:${port}`);
});

Langkah 3: Menambahkan Router Middleware

Kita dapat membuat router middleware untuk menangani permintaan dari berbagai rute. Misalnya, kita akan membuat rute untuk menampilkan halaman beranda dan halaman tentang. Tambahkan kode berikut di file `app.ts`:


const homeRouter = express.Router();
const aboutRouter = express.Router();

homeRouter.get('/', (req: Request, res: Response) => {
res.send('Halaman Beranda');
});

aboutRouter.get('/', (req: Request, res: Response) => {
res.send('Halaman Tentang');
});

app.use('/', homeRouter);
app.use('/about', aboutRouter);

Langkah 4: Menambahkan Logger

Kita juga dapat menambahkan logger ke aplikasi Express untuk mencatat aktivitas server. Tambahkan kode berikut di file `app.ts`:


import fs from 'fs';
import path from 'path';

const logStream = fs.createWriteStream(path.join(__dirname, 'access.log'), { flags: 'a' });

app.use(morgan('combined', { stream: logStream }));

Langkah 5: Menjalankan Aplikasi

Terakhir, jalankan aplikasi dengan perintah:


npx ts-node app.ts

Sekarang, aplikasi Express JS dengan TypeScript Anda sudah memiliki router middleware dan logger yang siap digunakan! Selamat mencoba!