Next.js - เส้นทาง Api

API Routes เป็นวิธีสร้าง Rest API โดยใช้ Next.js Next.js แมปไฟล์ใด ๆ ที่มีอยู่ใน/pages/apiโฟลเดอร์และจะถือว่าเป็นจุดสิ้นสุดของ API ตัวอย่างฟังก์ชัน API -

export default (req, res) => {
   ...
}

ต่อไปนี้เป็นประเด็นสำคัญที่ควรพิจารณา

  • req - req คืออินสแตนซ์ของ http.IncomingMessage และใช้เพื่อรับข้อมูลจากการร้องขอ

  • res - res เป็นอินสแตนซ์ของ http.ServerResponse และใช้เพื่อส่งข้อมูลเป็นการตอบสนอง

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

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

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

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

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

เริ่มเซิร์ฟเวอร์ 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

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

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

{"name":"Robert"}