为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 Node JS JWT 身份验证中设置角色?

如何在 Node JS JWT 身份验证中设置角色?

慕妹3242003 2023-07-29 15:38:31
我对 Node JS 非常陌生,现在我正在学习如何在 Rest API 中使用 JWT 身份验证,我已经在登录函数中创建了令牌生成器,但是当我尝试通过设置某个角色来验证令牌时,如果该角色等于2我可以得到一个数据。现在我遇到了麻烦,因为我无法验证我的令牌登录:exports.login = function(req, res){    var post = {        email : req.body.email,        password : req.body.password    }    var query = "SELECT * FROM ?? WHERE ?? = ? AND ?? = ?";    var table = ["user", "password", md5(post.password), "email",post.email];    query = mysql.format(query,table);    connection.query(query, function(error, rows){        if(error){            console.log(error);        }else{            if (rows.length == 1){                //ini 1440 dalam second                var token = jwt.sign({rows}, config.secret);                id_user = rows[0].id;                username = rows[0].username;                email = rows[0].email;                tanggal_daftar = rows[0].tanggal_daftar;                role = rows[0].role;                var data = {                    id_user : id_user,                    access_token : token,                    username : username,                    email : email,                    tanggal_daftar : tanggal_daftar,                    role : role,                    ip_address : ip.address()                }                res.json({                     success : true,                     message : "Token JWT generate",                     token : token,                     idUser: data.id_user,                     username : username,                     email : data.email,                     tanggal_daftar : tanggal_daftar,                     role : data.role                    });            }else{                 res.json({"Error": true, "Message":"Email atau password anda salah"});            }        }    });
查看完整描述

1 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

你的有一个错误,if(role == 2)你应该将其更改为(decoded.role == 2)

编辑:更改if(role == 2)if(decoded.rows.role == 2)


查看完整回答
反对 回复 2023-07-29
  • 1 回答
  • 0 关注
  • 123 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信