TypeError:无法读取未定义的属性“标题”

时间:2020-03-26 05:40:32

标签: node.js express jwt router middleware

我正在使用JWT授权开发一个简单的API,并尝试制作一个验证中间件。 显然,我在导出中间件功能时出错:

TypeError: Cannot read property 'headers' of undefined

middlewares / auth.js:

const jwt = require('jsonwebtoken');

module.exports = (req, res, next) => {
  const token = req.headers['authorization'];
  console.log('Authorization token => ', token);
  if (!token) {
    res.status(403).json({ message: 'Forbidden' });
  } else {
    const verified = jwt.verify(token, process.env.SECRET_KEY);
    req.verified = verified;
    next();
  }
};

routes / user.js:

const authMiddleware = require('../middlewares/auth');

router.use(authMiddleware());

1 个答案:

答案 0 :(得分:0)

使用req.headers['authorization']代替req.query['authorization']