Node.js 使用Express从URL中删除文件名
当我在Nodejs上托管我的前端时,我使用Node.js 使用Express从URL中删除文件名,node.js,express,web,Node.js,Express,Web,当我在Nodejs上托管我的前端时,我使用app.use(express.static(path.join(u dirname,“public”))。然而,这使我把HTML文件的名称放在URL的末尾;例如,localhost:3000/index.html 如何使其在基本URL处显示前端,在本例中为“localhost:3000/”。我已经附加了我的Nodejs代码的一部分。我将感谢您的帮助,并提前向您表示感谢 var path = require('path'); var express =
app.use(express.static(path.join(u dirname,“public”))代码>。然而,这使我把HTML文件的名称放在URL的末尾;例如,localhost:3000/index.html
如何使其在基本URL处显示前端,在本例中为“localhost:3000/”。我已经附加了我的Nodejs代码的一部分。我将感谢您的帮助,并提前向您表示感谢
var path = require('path');
var express = require('express');
const app = express();
const port = process.env.PORT || '3000';
app.use(express.json());
app.use((req, res, next) => {
console.log(req.path);
next();
});
app.use(express.static(path.join(__dirname, "public")));
app.listen(port, () => console.log("Server is ready"));
您可以使用路由路径和发送文件方法:
app.get("/", function(req,res) {
res.sendFile("index.html", {root: path.join(__dirname, "public")})
})
这就是你要做的
//for static files like css and html
app.use('/static', express.static(path.resolve(__dirname, path to css and js)));
app.get('/*', (req, res)=>{
res.sendFile(path.join(__dirname, 'path to your html file'))
})
那个么,你们是否使用index.html作为后端服务器的首页?你们的前端是什么?是一个框架还是更多的html模板?如何将我的Javascript和CSS文件添加到html?修改了答案。它应该是保存css和js文件的文件夹