Özet - API rotaları
- React kursu
- İleri seviye
- Ders 12/56
- 5 dk
Ürünleri listeleyen ve yeni ürün ekleyen bir API yazarsın.
Özet - API rotaları
Bu grupta Next.js API rotalarını gördün: app/api/.../route.js, HTTP metodları, JSON yanıtları ve hata yönetimi. Her metod için ayrı export async function yazılır.
NextResponse.json JSON yanıtı, await request.json() gövde okuma, try/catch hata yönetimi standart araçlardır.
Şimdi küçük bir CRUD rotası yaz: GET ve POST birlikte.
Uygulama CRUD rotası
GET ve POST fonksiyonlarını yaz. GET: NextResponse.json({ items: ["a", "b"] }) döndürsün. POST: await request.json() ile gövdeyi oku, NextResponse.json({ created: data }, { status: 201 }) döndürsün. import { NextResponse } from "next/server" ve iki export async function olsun.
Başlangıç kodu
// app/api/items/route.js
// import NextResponse, GET ve POST fonksiyonlarını yazÖrnek çözüm
// app/api/items/route.js
import { NextResponse } from "next/server";
export async function GET() {
return NextResponse.json({ items: ["a", "b"] });
}
export async function POST(request) {
const data = await request.json();
return NextResponse.json({ created: data }, { status: 201 });
}Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Hangisi bir API rotası dosyasıdır?
- app/users/api.js
- app/api/users/page.js
- app/api/users/route.js Doğru cevap
- app/route.js
Açıklama: API = app/api/.../route.js.
2 POST gövdesi
export async function POST(request) {
const body = await request.____();
return NextResponse.json({ data: body });
}
export async function POST(request) {
const body = await request.json();
return NextResponse.json({ data: body });
}
Açıklama: await request.json() JSON gövdeyi verir.