Controllers
Penjelasan
Controller di NestJS adalah class ditandai decorator @Controller('prefix') — path prefix untuk SEMUA route di dalamnya. Tiap method ditandai decorator HTTP method (@Get(), @Post(), @Put(), @Delete()) dengan path tambahan opsional, setara route di Express tapi dikelompokkan per class alih-alih fungsi lepas.
Contoh Konsep
import { Controller, Get, Post } from '@nestjs/common';
@Controller('produk') // semua route di sini otomatis berprefix /produk
export class ProdukController {
@Get()
findAll(): string {
return 'Daftar semua produk';
}
@Post()
create(): string {
return 'Produk baru berhasil dibuat';
}
}
Praktikum
Buat ArtikelController dengan @Controller('artikel'), method findAll() (GET, mengembalikan "Daftar semua artikel") dan create() (POST, mengembalikan "Artikel baru dibuat").
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Controller HARUS didaftarkan di array controllers milik sebuah @Module supaya route-nya benar-benar aktif — bikin class Controller saja TIDAK CUKUP, kalau lupa mendaftarkannya ke module, NestJS tidak akan pernah merutekan request ke situ meski kodenya sudah benar.