Express JS res.redirect未定义

时间:2015-07-22 00:49:25

标签: javascript node.js express passport.js passport-facebook

关于如何在MEAN堆栈中使用passport-facebook我遵循此tutorial,当我尝试使用res.redirect('/signup')时出现此错误我始终收到此错误:ReferenceError: res is not defined

似乎我没有将res作为参数传递给我的函数。我尝试在second / last参数中添加它。但没有任何作用。我错过了什么???

这是我的代码:

exports.saveOAuthUserProfile = function(req, profile, done){
    User.findOne({
        provider: profile.provider,
        providerId: profile.providerId,
    },
    function(err, user) {
        if (err) {
            return done(err);
        }
        else
        {
            if (!user) {
                // console.log(profile.email.value);
                var possibleUsername = profile.username || ((profile.email) ? profile.email.value.split('@')[0] : '');
                User.findUniqueUsername(possibleUsername, null, function(availableUsername){
                    profile.username = availableUsername;
                    user = new User(profile);

                    user.save(function(err){
                        if (err) {
                            var message = getErrorMessage(err);
                            // var message = _this.getErrorMessage(err);
                            req.flash('error', message);
                            return res.redirect('/register');
                        }

                        return done(err, user);
                    });
                });
            }
            else
            {
                return done(err, user);
            }
        }
    });
};

0 个答案:

没有答案