Next.js - API MiddleWares

API Routes ใน Next.JS มีมิดเดิลแวร์ในตัวซึ่งช่วยในการแยกวิเคราะห์คำขอที่เข้ามา

ต่อไปนี้เป็นตัวกลาง

  • req.cookies- วัตถุคุกกี้มีคุกกี้ที่ส่งมาจากคำขอ ค่าเริ่มต้นคือ {}

  • req.query- วัตถุแบบสอบถามประกอบด้วยสตริงการสืบค้น ค่าเริ่มต้นคือ {}

  • req.body- ออบเจ็กต์แบบสอบถามมีเนื้อหาของคำขอที่แยกวิเคราะห์โดยใช้ 'content-type' ค่าดีฟอลต์คือ null

มาสร้างตัวอย่างเพื่อสาธิตสิ่งเดียวกัน

ในตัวอย่างนี้เราจะอัปเดต user.js ใน pages/api ไดเรกทอรี

มาอัปเดตโปรเจ็กต์ nextjs ที่ใช้ในบทAPI Routes

สร้างไฟล์ user.js ในไดเร็กทอรี pages / api ดังต่อไปนี้

export default (req, res) => {
   res.statusCode = 200
   res.setHeader('Content-Type', 'application/json')
   res.end(JSON.stringify({ query: req.query }))
}

เริ่มเซิร์ฟเวอร์ Next.js

รันคำสั่งต่อไปนี้เพื่อเริ่มเซิร์ฟเวอร์ -

npm run dev

> [email protected] dev D:\Node\nextjs
> next

ready - started server on http://localhost:3000
info  - Loaded env from D:\Node\nextjs\.env.local
event - compiled successfully
event - build page: /api/user
wait  - compiling...
event - compiled successfully
event - build page: /next/dist/pages/_error
wait  - compiling...
event - compiled successfully

ตรวจสอบผลลัพธ์

เปิด http: // localhost: 3000 / api / user? counter = 1 ในเบราว์เซอร์และคุณจะเห็นผลลัพธ์ต่อไปนี้

{"query":{"counter":"1"}}