繁体   English   中英

从本地存储保存并获取express.js令牌

[英]Save and get express.js token from local storage

我将Node.com与Express.js结合使用,并尝试在用户登录后生成JWT并将其保存到本地存储中,然后通过JWT进行身份验证,但是后来我不知道如何获取用于身份验证的令牌。 这是我正在使用的代码:

登录视图:

$.ajax({
            type: 'POST',
            url: base_url + "login",
            data: postData,
            dataType: 'json',
            success: function(data){
                // console.log(data1);
                // alert(data);
                _(data);
                if(data.success === false){
                    showError(data.msg);
                }else{
                    showError(data.msg);
                    window.localStorage.setItem("authToken", data.token);

                    var token = window.localStorage.getItem('authToken');
                    if (token) {
                      $.ajaxSetup({
                        headers: {
                          'x-access-token': token
                        }
                      });
                    }
                }
            }
        });

这是我用来检查任何路由之前要检查的路由身份验证:

router.use(function(req, res, next){
    var token = req.headers['x-access-token'];
    console.log(token);
    if (token) {
        // verifies secret and checks exp
        jwt.verify(token, app.get('superSecret'), function(err, decoded) {      
            if (err) {
                return res.json({ success: false, message: 'Failed to authenticate token.' });    
            }else{
                // if everything is good, save to request for use in other routes
                req.decoded = decoded;    
                next();
            }
        });

      } else {

        // if there is no token
        // return an error
        return res.status(403).send({ 
            success: false, 
            message: 'No token provided.' 
        });
      }
});

在console.log(token)中,我得到了一个Undefined变量,似乎我不知道如何从路由访问令牌。

非常感谢。

必须将“ x-access-token”注册为允许的标头

response.setHeader("Access-Control-Allow-Headers", "x-access-token, mytoken");

检查此职位: CORS和Access-Control-Allow-Header如何工作?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM