用户身份验证与快递会员护照和Angular

时间:2018-01-25 18:11:28

标签: node.js angular express passport.js express-session

所以我使用本地护照和快速会话,通过简单的登录和注册制作了基本的应用程序。

router.post('/register', (req, res) => {
var newUser = new User({
    email: req.body.email,
    username: req.body.username
});
User.register(newUser, req.body.password, (err, user) => {
    if (err) {
        res.status(404).json(err);
    } else {
        passport.authenticate('local')
            (req, res, () => {
                res.status(200).json({ "registerSuccess": true });
            });
    }
});
});

router.post('/login', function (req, res, next) {
passport.authenticate('local', function (err, user, info) {
    if (err) { 
        return next(err); 
    }
    // Redirect if it fails
    if (!user) {
        return res.status(404).json(info);
    }
    req.logIn(user, function (err) {
        if (err) { 
            return res.status(200).json(err);
        }
        // Redirect if it succeeds
        res.status(200).json({ "loginSuccess": true });
    });
})(req, res, next);
});

使用POSTMAN我得到了想要的效果。在2台不同的计算机上,我使用2个不同的用户登录,并在' / getUser' route,我得到有关当前登录用户的信息。

现在我想把这个应用程序变成RESTful API(我相信它已经是)。

现在我在Angular5做前端。当我点击路线' / login'时,我得到了回复,我已成功登录,就像Postman一样。但是当我改变路线时,我不再登录了?

如何让用户登录前端?这甚至可以通过护照和快递吗?

0 个答案:

没有答案