в чем именно разница между чем-то вроде этого
exports.loginRequired = function(req, res, next) {
try {
const token = req.headers.authorization.split(" ")[1];
jwt.verify(token, secretKey, function(err, decoded) {
if (decoded) {
next();
} else {
return next({
status: 401,
message: "Please login first"
});
}
});
} catch (err) {
return next({
status: 401,
message: "Please login first"
});
}
};
и passport-jwt, подобным этому
const opts = {};
opts.jwtFromRequest = ExtractJwt.fromAuthHeaderAsBearerToken();
opts.secretKey = secretKey;
module.exports = () => {
passport.use(
new JwtStrategy(opts, (jwt_payload, done) => {
User.findById(jwt_payload).catch(err => console.log(err).then(user => (user ? done(null,user) : done(null, false))));
})
);
};
, чтобы сделать то же самое, а затем в конечном итоге отправить обратно информацию пользователя