我是一名新手,我有一个看起来像这样的应用程序:
我有这样的代码:
const express = require("express"),
app = express(),
server = require("http").Server(app),
io = require("socket.io")(server)
app.use(express.static(__dirname + "/sign-in/public"))
app.use(express.static(__dirname + "/log-in/public"))
app.get("/sign-in", (req, res) => res.sendFile(__dirname + "/sign-in/public/index.html"))
app.get("/log-in", (req, res) => res.sendFile(__dirname + "/log-in/public/index.html"))
server.listen(8081, () => console.log(`Listening on ${server.address().port}`))
但是问题是执行node server.js
后,当我转到localhost:8081/log-in
时,会看到sign-up
页面,与localhost:8081
和{{1 }}。但是,当我转到localhost:8081/sign-up
时想拥有log-in
页。如何实现?我做错了什么?谢谢
答案 0 :(得分:2)
问题是您要在同一路径下同时服务两个静态路径。您的代码应如下所示:
const express = require("express"),
app = express();
app.use('/sign-in/', express.static(__dirname + "/sign-in/public"));
app.use('/log-in/', express.static(__dirname + "/log-in/public"));
app.listen(8081, () => console.log(`Listening on 8081`));
答案 1 :(得分:0)
尝试一下就可以了
app.get('/login', function(req,res){
res.sendfile(__dirname + 'login/public/index.html');
});
答案 2 :(得分:0)
那么您收到此错误的原因是因为您已经定义了一个静态文件路由而无法定义它,这又可能是我认为的问题,所以我在Mean Stack上工作了6个月