【发布时间】:2018-10-10 15:56:45
【问题描述】:
我从网上下载了一个Node / Ionic 项目,然后...
在授权控制器文件上,我有以下内容:
...
exports.login = function(req, res, next) {
var userInfo = getUserInfo(req.user);
res.status(200).json({
token: 'JWT ' + generateToken(userInfo),
userInfo: userInfo
});
}
...
在其他配置文件上我有以下内容:
...
passport.use(
new JwtStrategy({
secretOrKey: credentials.secret,
jwtFromRequest: ExtractJwt.fromAuthHeader(),
},
function(payload, done) {
User.findById(
payload._id,
function(err, user) {
if (err) {
return done(err, false);
}
if (user) {
return done(null, user);
} else {
return done(null, false);
}
}
);
}
)
);
...
在routes 文件中,我有以下内容:
...
app.get(
'/api/auth/check',
passport.authenticate('jwt', { session: false }),
function(req, res) {
var user = req.user;
res.send({ content: 'Success', user: user });
}
...
那么,我有一个具体的问题:
授权控制器文件中的“JWT”是什么?
...
token: 'JWT ' + generateToken(userInfo),
...
如果我想使用ABCDEF 而不是JWT 呢?实际上,我尝试了不同于:JWT 的其他字符串,它似乎继续工作,不明白为什么。我去了documentation,但不清楚。
【问题讨论】:
标签: node.js express jwt passport.js passport-jwt