EDIT:提出的解决方案在这个答案中是实现这一目标的正确方法:
On a get
节点中的请求我可以这样做:
app.get('/', function(req, res) {
res.render('index.ejs', {
message: 'test'
});
});
并发送一个对象以便随请求一起设置消息。我怎样才能通过重定向做同样的事情:
即像这样:
function testSend(req, res) {
mess = {message: 'test two'};
res.redirect('/', mess);
//Won't pass to the "get"
}
另一种解决方案是使用快速会议:
当您初始化应用程序时:
var session = require('express-session');
app.use(session({secret: 'mySecret', resave: false, saveUninitialized: false}));
//configure the options however you need them, obviously
您的重定向功能:
function testSend(req, res) {
req.session.message = 'please login first'; //or whatever
res.redirect('/');
});
在你的路由器中:
app.get('/', function(req, res) {
var message = req.session.message;
res.render('index.ejs', {message: message});
});
这可以将您的消息安全地保存在服务器端,以防其中包含敏感数据。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)