如何在expressjs中为json web token设置标头?

您好我正在使用快速framework.j使用passport-jwt和jasonwebtoken进行身份validation在nodeJs模拟身份validation。 我创build了API,并在邮递员上工作得很好。但是我卡在前端我不能够在前端使用受保护的API。在邮递员中,我使用头文件发送令牌,并且工作得很好。但是它在前端不起作用如何发送令牌并从前端validation? 我的代码是:

app.post("/login", function(req, res) { if(req.body.name && req.body.password){ var name = req.body.name; var password = req.body.password; } var user = users[_.findIndex(users, {name: name})]; if( ! user ){ res.status(401).json({message:"no such user found"}); } if(user.password === req.body.password) { var payload = {id: user.id}; var token = jwt.sign(payload, jwtOptions.secretOrKey); res.json({message: "ok", token: token}); } else { res.status(401).json({message:"passwords did not match"}); } }); 

如果令牌有效,这个post方法应该redirect到这个页面

 app.get("/secret", passport.authenticate('jwt', { session: false }), function(req, res){ res.json("Success! You can not see this without a token"); }); 

 npm install cookie-parser var cookieParser = require('cookie-parser') app.use(cookieParser()) app.use(function (req, res, next) { var cookie = req.cookies.jwtToken; if (!cookie) { res.cookie('jwtToken', theJwtTokenValue, { maxAge: 900000, httpOnly: true }); } else { console.log('let's check that this is a valid cookie'); // send cookie along to the validation functions... } next(); });