繁体   English   中英

点击特定路由后如何发送首页[Express / Nodejs]

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM