API rotaları
- React kursu
- İleri seviye
- Ders 9/56
- 4 dk
Next.js'de route handler yazmayı öğrenirsin.
API rotaları
Next.js App Router'da API rotaları app/api/... altında route.js dosyalarıyla tanımlanır. Her dosya, bir HTTP isteğini işleyen fonksiyonlar dışa aktarır.
Örneğin app/api/hello/route.js dosyası /api/hello adresine cevap verir. GET, POST, PUT, DELETE için ayrı fonksiyonlar yazarsın.
API rotaları sunucuda çalışır; istemciye JavaScript gönderilmez.
HTTP metodları
Her HTTP metodu için ayrı bir export fonksiyonu yazarsın: export async function GET(request), export async function POST(request) gibi. Next.js hangi metodun çağrıldığına bakarak ilgili fonksiyonu çalıştırır.
Tanımlanmayan metodlar 405 döndürür. Bu, REST API'lerde standart bir yaklaşımdır.
Fonksiyonlar async olmalıdır; çünkü çoğu zaman veritabanı veya dış API bekler.
Uygulama İlk API rotası
GET fonksiyonu yaz: request parametresi alsın, new Response("Merhaba API") döndürsün. Fonksiyon async ve export olsun.
Başlangıç kodu
// app/api/hello/route.js
// GET fonksiyonunu buraya yazÖrnek çözüm
// app/api/hello/route.js
export async function GET(request) {
return new Response("Merhaba API");
}Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 API rotası hangi dosyada tanımlanır?
- route.js Doğru cevap
- page.js
- api.js
- server.js
Açıklama: app/api/.../route.js API rotasıdır.
2 GET fonksiyonu
export async function ____(request) {
return new Response("Merhaba");
}
export async function GET(request) {
return new Response("Merhaba");
}
Açıklama: GET fonksiyonu GET isteklerini işler.
3 API rotaları: kavramları eşleştir
| Kavram | Anlamı |
|---|---|
route.js |
API dosyası |
GET |
Okuma |
POST |
Yazma |
DELETE |
Silme |