簡體   English   中英

在 Replit 上將 html 文件暴露給 express.static 中間件

[英]Exposing html file to express.static middleware on Replit

在 Replit 上,使用 app.get 中的res.sendFile呈現app.get文件效果非常好,我可以通過傳入express.static中間件來添加徽標、styles 和 js 邏輯文件。 但是當我嘗試將 html 作為傳遞給express.static中間件的 static 文件時,頁面不會呈現。

這是 replit: https://replit.com/@yanichik/NodeJSandExpressFullCourseFCC#02-express-tutorial/app.js

當 html 通過res.sendFile傳入時按預期呈現:

const express = require('快遞'); const path = require('路徑');

const app = express();

// 設置 static 和中間件 // static -> 服務器不必更改的文件 app.use(express.static(path.resolve(__dirname, './public')))

app.get('/', (req, res) => { res.sendFile(path.resolve(__dirname, './navbar-app/index.html')) })

app.all('*', (req, res) => { res.status(404).send('找不到資源。') })

app.listen(5000, () => { console.log('服務器偵聽端口 5000...') })

module.exports = 應用程序;

在此處輸入圖像描述

現在,當 html 通過express.static中間件傳遞時,不會按預期呈現:

const express = require('快遞'); const path = require('路徑');

const app = express();

// 設置 static 和中間件 // static -> 服務器不必更改的文件 app.use(express.static(path.resolve(__dirname, './public')))

// app.get('/', (req, res) => { //
res.sendFile(path.resolve(__dirname, './navbar-app/index.html')) // })

app.all('*', (req, res) => { res.status(404).send('找不到資源。') })

app.listen(5000, () => { console.log('服務器偵聽端口 5000...') })

module.exports = 應用程序;

在此處輸入圖像描述

您必須像這樣專門請求靜態公開的文件:

https://baseURL.com/navbar-app/index.html

當您注釋掉獲取路線時。

如果你有你的 get route uncommented route 那么

https://baseurl.com

將返回 html 文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM