所以我的**路由('/dash')**看起来像这样:
// validating using JWT
router.post('/dash', passport.authenticate('jwt', {session: false}), function (req, res) {
res.json({'success': true});
});
// validating using LOCAL
router.post('/dash', authenticationHelpers.isAuth, function (req, res) {
res.json({'success': true});
});
// authenticationHelpers.isAuth
function isAuth(req, res, next) {
if (req.isAuthenticated())
return next();
res.status(401).json({"authenticated": false});
}
那么,我如何在同一个应用程序上(在同一条路线上)同时使用本地和JWT策略?如何将两者结合起来。
- 注意:本地适用于Web应用,JWT适用于移动的应用 *
2条答案
按热度按时间j91ykkif1#
终于想通了。
修改的isAuth函数:
欢迎提出建议。..
wwtsj6pe2#
我需要我的应用程序同样的事情,我不想单独的前端和后端,我想使用我的代码与 Postman 没有会话太多。所以我解决这样的问题
首先,我改变了我的“jwtFromRequest”,所以我可以寻找jwt从头部和sesssion在一起
我定义了我的登录根(我有2根)
我在Controller的登录功能:
最后是我的检查认证中间件