【问题标题】:Signing for a jwt web token returns null - nodejs为 jwt Web 令牌签名返回 null - nodejs
【发布时间】:2017-03-27 12:30:13
【问题描述】:

jwt 签名失败并为令牌返回 null。这是我的实现:

var jwt = require('jsonwebtoken');

var jwt_session_secret = "rnwR_apwvkWjdHovcmmQuoDwLR8av9oFjbJm2KhS7oEX9aSiBu9e96jxCDM9vj5_x8OlCCEiXwIGkagL-KDgnDsulc2e0QU5qYN75lzomrc4P9gqgGXB7HVfpaBcKgW3oLsXRBWAoFT5ICsOSwT-70hdQtJfE7a3NK6j3jmxcSE";

var payload = { ud: 23 };
var exp = Math.floor((new Date(+new Date + 12096e5).getTime())/1000);
var opts = { issuer: 'gateway', expiresIn: exp };

console.log(payload);

jwt.sign( payload, jwt_session_secret, opts, function(token) {

    console.log("token = " + token);

        jwt.verify(token, jwt_session_secret, function(err, decoded) {
            if(err) {
                console.log("Error failed: " + err);
                return;
            }
            console.log("decoded");
            console.log(decoded);
            });
        });

代码对我来说看起来不错,但不确定我是否在这里遗漏了什么。这是输出:

{ ud: 23 } token = null Error failed: JsonWebTokenError: jwt must be provided

【问题讨论】:

    标签: node.js jwt access-token


    【解决方案1】:

    你需要在回调中接受两个参数,errtoken如下:

    jwt.sign( payload, jwt_session_secret, opts, function(err, token) {
    

    【讨论】:

      猜你喜欢
      • 2021-01-22
      • 2016-06-27
      • 2019-11-01
      • 2018-05-29
      • 2017-05-30
      • 2017-10-15
      • 1970-01-01
      • 1970-01-01
      • 2020-05-05
      相关资源
      最近更新 更多