我有一个节点服务器,对于令牌身份验证,我使用它:
var jwt = require('jsonwebtoken');
var SEED = require('../config/config').SEED;
// =====================================
// Verificar token
// =====================================
exports.verificaToken = function(req, res, next) {
var token = req.query.token;
jwt.verify(token, SEED, (err, decoded) => {
if (err) {
return res.status(401).json({
ok: false,
mensaje: 'Token incorrecto',
errors: err
});
}
req.usuario = decoded.usuario;
next();
});
};
我想知道如何通过标题而不是URL获取令牌,现在我必须使用localhost:300 / usuario?TOKEN,但我不知道如何通过标题发送和验证令牌,谢谢。< / p>
答案 0 :(得分:0)
getToken = function fromHeaderOrQuerystring (req) {
if (req.headers.authorization && req.headers.authorization.split(' ')[0] === 'Bearer') {
return req.headers.authorization.split(' ')[1];
} else if (req.query && req.query.token) {
return req.query.token;
}
return null;
}