如何通过标头获取令牌而不是URL

问题描述 投票:0回答:1

我有一个节点服务器,对于令牌身份验证我使用这个:

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,但我不知道如何通过标头发送和验证令牌,谢谢。

javascript node.js http
1个回答
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;
}

source

© www.soinside.com 2019 - 2024. All rights reserved.