![](/img/trans.png)
[英]How to get the params in a Express route when I am using app.use() for the home page in my server
[英]How to send the home page after hiting a specific route [Express/Nodejs]
在用户点击以下路由后,我试图重定向到主页: /ref=123
但我想保留该baseUrl
,这是我到目前为止的内容:
我在我的server.js
文件中要求以下内容: const referred = require('./routes/referred')
server.js
const referred = require('./routes/referred')
。
app.use('/ref=:id', (req, res, next) => {
res.locals = req.params.id
}, referred)
因此,当用户点击上述路线时,我正在我的referred.js
文件中进行了一些验证。 实际上,我需要发送某种响应来告知提供的id
是否存在,但无论如何都要显示主页,这是一个简单的登录/注册表格。
referred.get('/', (req, res, next) => {
//doing validations with res.locals
next() //<- calling the next middleware
})
调用next()
我将该中间件放在下面以重定向到主页。
不知道这是否可能: app.use(express.static(_dirname + '/dist'))
似乎不是因为我得到404
。
我知道我可以使用req.redirect()
函数,但实际上它将向服务器发出新请求并刷新页面,从而擦除了我想保留的baseUrl
。
您如何呈现/发送页面?
您可以使用res.sendFile('path/to/page.html')
发送回任何html文件,同时保留请求URL。
如果要在主页上显示动态消息,则应使用ejs
类的查看引擎。 如果您已经在使用引擎,则可以执行以下操作
res.render('path/to/page', { status: 'This id does not exist!'})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.