app.engine ใน ExpressJS

ฟังก์ชัน app.engine() ใน ExpressJS ให้คุณกำหนดเอ็นจิ้นสำหรับประเภทเนื้อหาที่กำหนดเอง

ฟังก์ชัน app.engine() ต้องการสองอาร์กิวเมนต์:

  • ประเภทเนื้อหา: ประเภทเนื้อหาที่คุณต้องการกำหนดเอ็นจิ้น
  • เอ็นจิ้น: ฟังก์ชันที่ใช้ในการสร้างวัตถุคำตอบสำหรับประเภทเนื้อหา

ตัวอย่างเช่น โค้ดต่อไปนี้จะกำหนดเอ็นจิ้นสำหรับประเภทเนื้อหา “text/html”:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
const express = require('express');

const app = express();

app.engine('text/html', (req, res, next) => {
// เขียนคำตอบ HTML ลงในวัตถุคำตอบ
res.send('<h1>Hello, World!</h1>');
});

app.get('/', (req, res) => {
// ใช้เอ็นจิ้น "text/html" เพื่อส่งคำตอบ
res.render('index.html');
});

app.listen(3000, () => {
console.log('Server started on port 3000');
});

โค้ดนี้จะใช้ฟังก์ชัน engine() เพื่อกำหนดเอ็นจิ้นสำหรับประเภทเนื้อหา “text/html” เอ็นจิ้นนี้จะใช้ฟังก์ชัน render() เพื่อเขียนคำตอบ HTML ลงในวัตถุคำตอบ

เมื่อคุณไปที่ http://localhost:3000 คุณจะเห็นข้อความ “Hello, World!”

คุณสามารถใช้ฟังก์ชัน app.engine() เพื่อกำหนดเอ็นจิ้นสำหรับประเภทเนื้อหาที่กำหนดเอง ตัวอย่างเช่น คุณสามารถใช้ฟังก์ชัน app.engine() เพื่อกำหนดเอ็นจิ้นสำหรับประเภทเนื้อหา “image/jpeg” หรือเพื่อกำหนดเอ็นจิ้นสำหรับประเภทเนื้อหา “audio/mp3”

เมื่อคุณใช้ฟังก์ชัน app.engine() คุณควรให้ความสนใจเป็นพิเศษกับ:

  • ประเภทเนื้อหา: ตรวจสอบให้แน่ใจว่าคุณกำลังกำหนดเอ็นจิ้นสำหรับประเภทเนื้อหาที่ถูกต้อง
  • เอ็นจิ้น: ตรวจสอบให้แน่ใจว่าเอ็นจิ้นของคุณสามารถสร้างวัตถุคำตอบที่ถูกต้องสำหรับประเภทเนื้อหา

ฟังก์ชัน app.engine() เป็นเครื่องมือที่มีประสิทธิภาพที่สามารถช่วยให้คุณปรับแต่งแอปพลิเคชัน ExpressJS ของคุณได้อย่างมีประสิทธิภาพ