static files ใน ExpressJS

Static files ใน ExpressJS คือไฟล์ที่ไม่เป็นโปรแกรม เช่น ไฟล์รูปภาพ ไฟล์ CSS และไฟล์ JavaScript คุณสามารถให้บริการไฟล์คงที่โดยใช้ฟังก์ชัน express.static()

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

  • เส้นทาง: เส้นทางคือเส้นทางไปยังไดเร็กทอรีที่เก็บไฟล์คงที่
  • ตัวเลือก: ตัวเลือกคือออปชันเพิ่มเติมที่ควบคุมวิธีที่ ExpressJS ให้บริการไฟล์คงที่

ตัวอย่างเช่น โค้ดต่อไปนี้จะให้บริการไฟล์คงที่ทั้งหมดที่เก็บไว้ในไดเร็กทอรี public:

1
2
3
4
5
6
7
8
9
const express = require('express');

const app = express();

app.use(express.static('public'));

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

เมื่อคุณรันโค้ดนี้ คุณสามารถไปที่ http://localhost:3000/image.jpg เพื่อดูไฟล์รูปภาพ “image.jpg”

คุณยังสามารถใช้ฟังก์ชัน express.static() เพื่อให้บริการไฟล์คงที่จากไดเร็กทอรีหลายไฟล์:

1
2
3
4
5
6
7
8
9
10
const express = require('express');

const app = express();

app.use(express.static('public'));
app.use(express.static('files'));

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

โค้ดนี้จะทำให้แอปพลิเคชัน ExpressJS ให้บริการไฟล์คงที่ทั้งหมดที่เก็บไว้ในไดเร็กทอรี public และ files

คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับไฟล์คงที่ใน ExpressJS ได้จากเอกสารประกอบของ ExpressJS