0

我试图将不记名令牌保存在 req.header["Authorization"]

//here a tried to authenticate using jwt strategy but send "unauthorized"
app.get ("/secret", passport.authenticate("jwt", {session: false}), (req, res) => {
    res.send ("secret");  
})
//register route authenticate local with passport after create a jwt token
app.post ("/register", (req, res) => {
    User.register (new User ({username: req.body.username}), req.body.password, (err, user) => {
        if (err)
            return res.send (err);
        passport.authenticate("local")(req, res, () => {
            const token = "Bearer " + generateToken ({_id: user._id});
            req.header["Authorization"] = token;
            res.redirect ("/secret");
        })
    })
})
app.listen (3000);

我将令牌添加到 req.header [“Authorization”],但是当 res 重定向到秘密获取路由时,它显示“未授权”,但是当我尝试使用邮递员通过授权承载标头手动发送令牌时,它可以工作

我使用了 passport-jwt 策略和提取方法。对于提取,我使用了 fromAuthHeaderAsBearerToken()。我的问题是我们是否可以在 req obj 上附加新的标题?

4

0 回答 0