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"}