Route Handlers (API Routes)
Penjelasan
Route Handler dipakai untuk membuat endpoint API sendiri (backend) langsung di dalam project Next.js yang sama — dibuat lewat file route.js di dalam folder app/api/nama-endpoint/, meng-export fungsi bernama sesuai HTTP method (GET, POST, dst).
Contoh Konsep
// app/api/produk/route.js
import { NextResponse } from 'next/server';
export async function GET() {
const produk = [{ id: 1, nama: 'Kaos' }, { id: 2, nama: 'Topi' }];
return NextResponse.json(produk);
}
export async function POST(request) {
const body = await request.json();
return NextResponse.json({ pesan: `Produk ${body.nama} berhasil ditambahkan` }, { status: 201 });
}
Praktikum
Buat app/api/artikel/route.js dengan fungsi GET() yang mengembalikan array artikel dummy lewat NextResponse.json(), dan fungsi POST(request) yang membaca body JSON-nya lalu mengembalikan pesan konfirmasi berisi judul artikel yang dikirim.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Nama fungsi yang di-export (GET, POST, PUT, DELETE, dst) HARUS PERSIS huruf kapital sesuai HTTP method-nya — Next.js otomatis memanggil fungsi yang cocok berdasarkan method request yang masuk, TANPA kamu perlu menulis pengecekan method manual seperti di Express.js.