Event handlers
Filesystem routing
md
api/
test.ts <-- /api/test
routes/
hello.get.ts <-- GET /hello
hello.post.ts <-- POST /hello
nitro.config.ts
Simple Routes
ts
export default defineEventHandler(() => {
return { hello: 'API' }
})
Route with params
ts
export default defineEventHandler(event => {
const name = getRouterParam(event, 'name')
return `Hello ${name}!`
})
Multiple params
ts
export default defineEventHandler(event => {
const name = getRouterParam(event, 'name')
const age = getRouterParam(event, 'age')
return `Hello ${name}! You are ${age} years old.`
})
Catch all params
ts
export default defineEventHandler(event => {
const name = getRouterParam(event, 'name')
return `Hello ${name}!`
})
Environment specific handlers
สามารถกำหนดให้เส้นทาง (route) ใดๆ รวมอยู่ในการ build เฉพาะบางประเภทโดยการเพิ่ม suffix เช่น
.dev
,.prod
หรือ.prerender
เข้าไปที่ชื่อไฟล์ ตัวอย่างเช่น:routes/test.get.dev.ts
หรือroutes/test.get.prod.ts
Middleware
Middleware ทำให้สามารถแก้ไข request ก่อน process => วิธีใช้คือใช้ภายในโฟลเดอร์
middleware/
md
routes/
hello.ts
middleware/
auth.ts
logger.ts
...
nitro.config.ts