Express4.x connect-flash 不起作用
发布于 6 年前 作者 hiayun141 3527 次浏览 来自 问答

第一次接触Node.js,研究到connect-flash中间件时,自己简单写了几句代码 想测试下flash的用法,不过一直测试不成功,求指点 app.use(flash());

app.use(function(req,res,next){ var err = req.flash(‘myerror’); res.locals.myerror = err.length ? err : null; //res.locals.myerror=req.session.error;
//req.session.error=null; next(); });

app.get(’/users’, function(req,res){ req.flash(‘myerror’,‘测试错误显示’); //req.session.error=‘测试错误显示’; res.redirect("/"); });

app.get(’/’, function(req,res){ res.render(‘index’, { title: ‘Express’ }); });

浏览器访问 localhost:3000/users req.flash始终不能读到值,通过调试在/users里复制完,redirect(’/’),req.flash(‘myerror’)就没值了 以为是session问题,后面加入session测试(取消掉注释) 无问题

2 回复

node版本:4.4.7 express版本:4.13.4 connect-flash版本: 0.1.1

app.use(function(req,res,next){
	var err = req.flash(‘myerror’);
	res.locals.myerror = err.length ? err : null;
	//res.locals.myerror=req.session.error;
	//req.session.error=null; next();
});

这段代码是想干什么的?另外你的 view 可以贴一下吗?

回到顶部