[英]How to serve static files with express.js
我正在嘗試使用 express.js 提供靜態文件。
const express = require('express')
const app = express()
app.use(express.static('public'))
app.listen(8888, () => console.log('listening on port 8888!'))
但我收到錯誤:拒絕應用來自“ http://localhost:8888/static/css/main.5a7f7b3b.css ”的樣式,因為它的 MIME 類型(“text/html”)不是受支持的樣式表 MIME 類型,並啟用了嚴格的 MIME 檢查。 知道我做錯了什么嗎?
我可能遲到了,但我剛剛找到答案,在其他任何地方都找不到,所以我將其發布:
您的代碼的問題是,它會正確地提供 index.html,但是當它加載 .css 文件(鏈接在 .html 文件中)時,應用程序將通過再次發送 .html 文件來響應。 您的瀏覽器期望獲得 .css 文件,但實際上獲得了 .html 文件,這導致了錯誤。
這將修復它:
const express = require('express')
const path = require('path');
const app = express()
app.use(express.static('public'))
app.get("*", (req, res) => {
res.sendFile(path.join(__dirname, "./path/To/Your/Dir"));
});
app.listen(8888, () => console.log('listening on port 8888!'))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.