Express JS: Routing, Response, and File Structure
Pengantar
- Diskusi malam hari ini adalah tentang Routing Path, Response, dan File Structure di Express JS.
- Review singkat dari sesi sebelumnya untuk memahami sesi kali ini.
Raut Path (Routing Path)
- Routing Path adalah cara untuk membuka method API melalui URL.
- Metode HTTP yang digunakan antara lain: GET, POST, PUT, DELETE.
- GET: Untuk mengambil data dari server, misalnya, membuka URL
http://localhost:3000/mahasiswa
untuk mendapatkan data mahasiswa.
- POST: Untuk mengirim data ke server, misalnya menambahkan data mahasiswa baru. Tidak bisa diakses melalui browser langsung, harus menggunakan tool seperti Postman.
- PUT: Untuk mengupdate data yang sudah ada di server, misalnya mengubah nama mahasiswa.
- DELETE: Untuk menghapus data di server.
Contoh Implementasi di Express JS
- Setup Server: Gunakan
npm run
untuk menjalankan server di localhost:3000
.
- Basic GET Route:
app.get('/', (req, res) => {
res.send('Server is up!');
});
- POST Route with Postman: Testing dengan Postman untuk mengirim data via POST:
app.post('/mahasiswa', (req, res) => {
res.send('Data mahasiswa ditambahkan!');
});
- Basic PUT and DELETE Routes: Cara mendefinisikan route PUT dan DELETE dengan URL yang sama karena metode berbeda (tidak akan bertabrakan):
app.put('/mahasiswa/:id', (req, res) => {
res.send('Data mahasiswa diupdate!');
});
app.delete('/mahasiswa/:id', (req, res) => {
res.send('Data mahasiswa dihapus!');
});
Response
File Structure
- Mengorganisir file dalam proyek untuk membedakan logic, routing, dan utility.
- Contoh struktur folder:
- controllers
- models
- routes
- utils
- index.js
- Eksport Modular Pada Response:
// response.js
function sendResponse(res, statusCode, message, data) {
res.status(statusCode).json({ message, data });
}
module.exports = sendResponse;
// index.js
const sendResponse = require('./response');
app.get('/', (req, res) => {
sendResponse(res, 200, 'Request sukses!', {});
});
Kesimpulan
- Penting untuk memahami routing path, jenis response, dan struktur folder di Express JS.
- Contoh praktis membantu mencegah kebingungan di sesi mendatang.
- Terus eksperimen dan pahami metode berbeda agar proyek lebih terstruktur dan maintainable.
Catatan Tambahan
- Jangan ragu untuk bertanya jika mengalami hambatan.
- Lanjutkan pemahaman ke sesi berikutnya untuk lebih mendalam tentang query database dan validasi.
Pastikan kalian review kembali topik ini sebelum sesi selanjutnya!