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

时间:2019-07-08 07:19:46

标签: node.js express backend

我是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'
        })
    }
}

0 个答案:

没有答案