Node.js中生成token详解

1.jsonwebtokens

(1)概述
jsonwebtokens简称jwt,是后端用来生成token的一个库

(2)组成

header(头部):{
'alg': 'HS256',
'typ': 'JWT'
}

//注释:header默认是以上配置项

payload(数据):{
iss:Issuer,发行者
sub:Subject,主题
aud:Audience,观众
exp:Expiration time,过期时间
nbf:Not before
iat:Issued at,发行时间
jti:JWT ID
}

//注释:以上是官方给出的一些配置默认的键名,除了这些你还可以自己定义,自己定义的参数,通过jwt的verify可以解码出来,从而进行数据库的查找

secret(签名):'I_LOVE_JING'

//注释:这个签名你可以自己随便定义,但是要确保他的安全性,因为后面要经行解码的时候,要用到

(3)方法

sign(payload,secret, {expiresIn:60*60*24// 授权时效24小时})//此方法会生成一个token,第一个参数是数据,第二个参数是签名,第三个参数是token的过期时间可以不设置

verify(token,secret)//此方法会将一个token解码,这个token是由哪些数据构成的,只要传进去的secret正确,就可以解码出对应的数据,第一个参数是一个token,第二个参数是一个签名

2.生成token

const jwt  = require('jsonwebtokens');
let payload = {name:'张三',admin:true};
let secret = 'I_LOVE_JING';
let token = jwt.sign(payload,secret);
console.log(token)

3.解码token

let payload = jwt.verify(token,secret)
console.log(payload)


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值