我是node.js的新手。我正在编写中间件,但遇到了麻烦。它说
“无法读取未定义的属性'headers'”。
当我尝试正文和查询时,会发生相同的错误。如何解决此错误?
const jwt = require('jsonwebtoken')
module.exports = (req, res, next) => {
//Kullanıcı bana bir token yollayacak
//Farklı formatlarda bu token gelebilir
const token = req.headers['x-access-token'] || req.body.token || req.query.token
// req.query.token => localhost:3000/api/movies/?token=asdasdsa olarak gelebilir
if(token){
jwt.verify(token, req.app.get('api_secret_key'), (err, decoded) => {
if(err){
res.json({
status: false,
message: 'Failed to authenticate token'
})
}
else{
// yapmış olan isteğin decode kısmına decoded'ı yazıyoruz
req.decode = decoded
next() // her şey yolunda herhangi bir route ile devam edebilirsin
}
})
}else{
res.json({
status: false,
message: 'No token provided'
})
}
}