ใน ExpressJS, req.acceptsCharsets เป็นคุณสมบัติที่ใช้ในการตรวจสอบว่าคำขอปัจจุบันยอมรับ character set ใด
Character set คือชุดของรหัสที่ใช้ในการแทนที่ตัวอักษรและสัญลักษณ์ต่างๆ
req.acceptsCharsets จะคืนค่า character set ของ character set ที่ตรงกับความต้องการของคำขอมากที่สุด หากไม่มี character set ที่ตรงกับความต้องการของคำขอ req.acceptsCharsets จะคืนค่า false
ตัวอย่างเช่น หากคุณมีแอปพลิเคชัน ExpressJS ที่ทำงานบน http://localhost:3000/ และผู้ใช้ส่งคำขอไปยัง URL http://localhost:3000/users/12345 พร้อมหัวเรื่อง Accept-Charset: utf-8req.acceptsCharsets จะถูกตั้งค่าเป็น “utf-8”
หากผู้ใช้ส่งคำขออีกครั้งไปยัง URL เดียวกันด้วยหัวเรื่อง Accept-Charset: ISO-8859-1req.acceptsCharsets จะถูกตั้งค่าเป็น false
หากต้องการใช้ req.acceptsCharsets ใน ExpressJS คุณสามารถใช้สิ่งนี้ในโค้ดของคุณ:
1 | const app = express(); |
เมื่อคุณเรียกใช้โค้ดนี้และเข้าถึง URL http://localhost:3000/users/12345 พร้อมหัวเรื่อง Accept-Charset: utf-8คุณจะเห็นข้อความ JSON ต่อไปนี้ในคอนโซล:
1 | { |
หากผู้ใช้ส่งคำขออีกครั้งไปยัง URL เดียวกันด้วยหัวเรื่อง Accept-Charset: ISO-8859-1คุณจะเห็นข้อความต่อไปนี้ในคอนโซล:
1 | The id is 12345 and the name is John Doe |
req.acceptsCharsets มีประโยชน์เมื่อคุณต้องการตรวจสอบว่าคำขอปัจจุบันยอมรับ character set ใด ตัวอย่างเช่น คุณอาจต้องการใช้ req.acceptsCharsets เพื่อส่งข้อมูลในรูปแบบที่ตรงกับความต้องการของคำขอ