แก้ไขแล้ว: วิธีส่งไฟล์ html ด้วย express

ปัญหาหลักที่เกี่ยวข้องกับการส่งไฟล์ HTML ด้วย Express คือ Express ไม่รองรับการให้บริการไฟล์แบบสแตติก เช่น HTML, CSS และ JavaScript ในการให้บริการไฟล์สแตติก คุณต้องใช้มิดเดิลแวร์ เช่น express.static() หรือมิดเดิลแวร์ express.static ที่ให้บริการโดยแพ็คเกจแบบสแตติก มิดเดิลแวร์นี้จะอนุญาตให้คุณระบุไดเร็กทอรีที่ไฟล์สแตติกของคุณอยู่ จากนั้นแมปคำขอสำหรับไฟล์เหล่านั้นไปยังไดเร็กทอรีนั้น

To send an HTML file with Express, you can use the res.sendFile() method. This method takes the path of the file as its argument and sends it to the client.

Example: 
app.get('/', (req, res) => { 
   res.sendFile(__dirname + '/index.html'); 
});

1. app.get('/', (req, res) => {
// บรรทัดนี้กำหนดตัวจัดการเส้นทางสำหรับเส้นทางรูทของแอปพลิเคชัน เมื่อมีการร้องขอไปยังเส้นทางรูท ฟังก์ชันการเรียกกลับนี้จะถูกดำเนินการโดยมีออบเจกต์ req และ res เป็นอาร์กิวเมนต์

2. res.sendFile(__dirname + '/index.html');
// บรรทัดนี้ใช้วิธี Express sendFile() เพื่อส่งไฟล์ HTML ซึ่งอยู่ที่ __dirname + '/index.html' ไปยังไคลเอนต์เพื่อตอบสนองต่อคำขอเส้นทางรูทของแอปพลิเคชัน

ไฟล์ HTML คืออะไร

ไฟล์ HTML เป็นไฟล์ Hypertext Markup Language ซึ่งใช้สร้างเว็บเพจ ไฟล์ HTML ประกอบด้วยแท็กและแอตทริบิวต์ที่กำหนดโครงสร้างและเนื้อหาของหน้าเว็บ ข้อความเหล่านี้เขียนด้วยข้อความธรรมดา จึงสามารถเปิดและแก้ไขได้ด้วยโปรแกรมแก้ไขข้อความใดๆ

เกี่ยวกับ ExpressJS

ExpressJS เป็นเฟรมเวิร์กเว็บแอปพลิเคชันสำหรับ Node.js ซึ่งเผยแพร่เป็นซอฟต์แวร์โอเพ่นซอร์สฟรีภายใต้ลิขสิทธิ์ MIT ออกแบบมาสำหรับสร้างเว็บแอปพลิเคชันและ API มันถูกเรียกว่าเฟรมเวิร์กเซิร์ฟเวอร์มาตรฐานโดยพฤตินัยสำหรับ Node.js

ExpressJS นำเสนอชุดคุณสมบัติที่มีประสิทธิภาพในการพัฒนาเว็บและแอปพลิเคชั่นมือถือ มันลดความซับซ้อนของกระบวนการร้องขอการกำหนดเส้นทาง จัดการมิดเดิลแวร์ แสดงผลหน้า HTML และส่งการตอบกลับไปยังฝั่งไคลเอ็นต์ ExpressJS ยังให้การสนับสนุนสำหรับเอ็นจิ้นเทมเพลตเช่น Jade, EJS และ Handlebars

เฟรมเวิร์ก ExpressJS ใช้ JavaScript และใช้รูปแบบสถาปัตยกรรม MVC (Model-View-Controller) ที่ช่วยให้นักพัฒนาสร้างแอปพลิเคชันที่ปรับขนาดได้อย่างง่ายดาย นอกจากนี้ยังช่วยให้นักพัฒนาสามารถใช้หลายฐานข้อมูล เช่น MongoDB, Redis, MySQL เป็นต้น ซึ่งช่วยให้สร้างแอปพลิเคชันที่ซับซ้อนได้ง่ายขึ้น

ฉันจะส่งไฟล์ HTML โดยใช้ Express ได้อย่างไร

หากต้องการส่งไฟล์ HTML โดยใช้ Express คุณต้องใช้เมธอด res.sendFile() วิธีนี้ใช้เส้นทางของไฟล์เป็นอาร์กิวเมนต์และส่งเป็นคำตอบไปยังไคลเอนต์

ตัวอย่าง:
app.get('/', (req, res) => {
res.sendFile (__dirname + '/index.html');
});

กระทู้ที่เกี่ยวข้อง:

แสดงความคิดเห็น