route.js
Rota İşleyicileri, Web İsteği ve Yanıt API'lerini kullanarak belirli bir rota için özel istek işleyicileri oluşturmanıza olanak tanır.
HTTP Methods
Bir rota dosyası, belirli bir rota için özel istek işleyicileri oluşturmanıza olanak tanır. Aşağıdaki HTTP yöntemleri desteklenmektedir: GET
, POST
, PUT
, PATCH
, DELETE
, HEAD
, ve OPTIONS
.
export async function GET(request: Request) {}
export async function HEAD(request: Request) {}
export async function POST(request: Request) {}
export async function PUT(request: Request) {}
export async function DELETE(request: Request) {}
export async function PATCH(request: Request) {}
// If `OPTIONS` is not defined, Next.js will automatically implement `OPTIONS` and set the appropriate Response `Allow` header depending on the other methods defined in the route handler.
export async function OPTIONS(request: Request) {}
Bilmekte fayda var: Rota İşleyicileri yalnızca
app
dizini içinde kullanılabilir. API Rotalarını (pages
) ve Rota İşleyicilerini (app
) birlikte kullanmanıza gerek yoktur, çünkü Rota İşleyicileri tüm kullanım durumlarını idare edebilmelidir.
Parameters
request
(optional)
request
nesnesi, Web İsteği API'sinin bir uzantısı olan bir NextRequest nesnesidir. NextRequest
, cookies
ve genişletilmiş, ayrıştırılmış URL nesnesi nextUrl
'a kolayca erişmek de dahil olmak üzere gelen istek üzerinde daha fazla kontrol sağlar.
context
(optional)
export async function GET(request, context: { params }) {
const team = params.team // '1'
}
Şu anda context
adresinin tek değeri, geçerli rota için dinamik rota parametrelerini içeren bir nesne olan params
adresidir.
Example | URL | params |
---|---|---|
app/dashboard/[team]/route.js | /dashboard/1 | { team: '1' } |
app/shop/[tag]/[item]/route.js | /shop/1/2 | { tag: '1', item: '2' } |
app/blog/[...slug]/route.js | /blog/1/2 | { slug: ['1', '2'] } |
NextResponse
Rota İşleyicileri, bir NextResponse
nesnesi döndürerek Web Yanıt API'sini genişletebilir. Bu, çerezleri, başlıkları, yeniden yönlendirmeyi ve yeniden yazmayı kolayca ayarlamanıza olanak tanır. API referansını görüntüleyin.
Version History
Version | Changes |
---|---|
v13.2.0 | Route handlers are introduced. |