我正在使用sailsjs v0.10.5。
我正在尝试在验证用户电子邮件之后重定向到登录,并在重定向之前更新数据库。
我在更新回调中使用重定向。但它在更新数据库后发送错误
'Cant send headers after they are sent'.
以下是用于重定向的代码:
verifyEmail: function(req, res){
var userId = req.param('userId');
User.update({id: userId},{isVerified: true}).exec(function(err, user) {
if (!err) {
req.flash('error', 'Your email is verified please login');
res.redirect('/login'); }else { return res.send(user, 400); }
});
答案 0 :(得分:7)
更新水线功能是异步的,你确定之前可能会触发的范围内没有一些res方法吗?
答案 1 :(得分:1)
建议将return res.*
用于所谓的“终端方法”,请参阅http://sailsjs.org/#/documentation/reference/res/res.forbidden.html?q=notes