1. 程式人生 > >利用 Express 托管靜態文件

利用 Express 托管靜態文件

keyword .com images scrip 方便 訪問 路徑 順序查找 file

通過 Express 內置的 express.static 可以方便地托管靜態文件,例如圖片、CSS、JavaScript 文件等。

將靜態資源文件所在的目錄作為參數傳遞給 express.static 中間件就可以提供靜態資源文件的訪問了。例如,假設在 public 目錄放置了圖片、CSS 和 JavaScript 文件,你就可以:

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

現在,public 目錄下面的文件就可以訪問了。

http://localhost:3000/images/kitten.jpg
http://localhost:3000/css/style.css
http://localhost:3000/js/app.js
http://localhost:3000/images/bg.png
http://localhost:3000/hello.html
所有文件的路徑都是相對於存放目錄的,因此,存放靜態文件的目錄名不會出現在 URL 中。

如果你的靜態資源存放在多個目錄下面,你可以多次調用 express.static 中間件:

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

訪問靜態資源文件時,express.static 中間件會根據目錄添加的順序查找所需的文件。

如果你希望所有通過 express.static 訪問的文件都存放在一個“虛擬(virtual)”目錄(即目錄根本不存在)下面,可以通過為靜態資源目錄指定一個掛載路徑的方式來實現,如下所示:

app.use(‘/static‘, express.static(‘public‘));

現在,你就愛可以通過帶有 “/static” 前綴的地址來訪問 public 目錄下面的文件了。

http://localhost:3000/static/images/kitten.jpg
http://localhost:3000/static/css/style.css
http://localhost:3000/static/js/app.js
http://localhost:3000/static/images/bg.png
http://localhost:3000/static/hello.html

利用 Express 托管靜態文件