我正在使用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());
答案 0 :(得分:0)
使用req.headers['authorization']
代替req.query['authorization']