Middleware ใน Next.js

Middleware ใน Next.js เป็นฟังก์ชันที่เรียกใช้ก่อนที่คำขอจะเข้าสู่แอปพลิเคชันของคุณ Middleware สามารถใช้เพื่อปรับเปลี่ยนคำขอหรือตอบสนองได้

Middleware มีประโยชน์สำหรับการดำเนินการต่อไปนี้:

  • การตรวจสอบสิทธิ์: คุณสามารถใช้ middleware เพื่อตรวจสอบสิทธิ์ผู้ใช้ก่อนที่จะอนุญาตให้พวกเขาเข้าถึงแอปพลิเคชันของคุณ
  • การติดตาม: คุณสามารถใช้ middleware เพื่อติดตามคำขอไปยังแอปพลิเคชันของคุณ
  • การบันทึก: คุณสามารถใช้ middleware เพื่อบันทึกคำขอไปยังแอปพลิเคชันของคุณ
  • แคช: คุณสามารถใช้ middleware เพื่อแคชคำขอไปยังแอปพลิเคชันของคุณ

Next.js มี middleware ในตัวหลายตัว รวมถึง middleware ต่อไปนี้:

  • HTTPS Middleware: Middleware นี้บังคับใช้ HTTPS สำหรับคำขอทั้งหมด
  • Static File Middleware: Middleware นี้ให้บริการไฟล์แบบคงที่จากโฟลเดอร์ public
  • Image Optimizer Middleware: Middleware นี้บีบอัดรูปภาพก่อนให้บริการ

คุณสามารถเพิ่ม middleware ที่กำหนดเองของคุณลงในแอปพลิเคชัน Next.js ได้โดยสร้างไฟล์ middleware.js ในโฟลเดอร์ pages

ไฟล์ middleware.js ของคุณควรมีฟังก์ชันเดียวที่รับคำขอเป็นอาร์กิวเมนต์

ฟังก์ชันนี้สามารถปรับเปลี่ยนคำขอหรือตอบสนองได้

ตัวอย่างเช่น ไฟล์ต่อไปนี้จะเพิ่ม middleware ที่บันทึกคำขอไปยังแอปพลิเคชันของคุณ:

1
2
3
4
5
6
7
8
9
// middleware.js

export default function middleware(req, res) {
// Log the request
console.log(req);

// Continue the request
res.sendStatus(200);
}

คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ middleware ใน Next.js จากเอกสารประกอบของ Next.js

Middleware เป็นเครื่องมือที่ทรงพลังที่จะช่วยให้คุณปรับแต่งแอปพลิเคชัน Next.js ของคุณได้อย่างยืดหยุ่น