PYJWT的使用

使用HS256编码和解码令牌


import jwt
import datetime

dic = {
    # 当前时间加上180秒,意味着token过期时间为3分钟以后
    'exp': datetime.datetime.now() + datetime.timedelta(seconds=180),  # JWT的过期时间
    'iat': datetime.datetime.now(),  #  JWT的签发时间
    'iss': 'lianzong',  # 签名
    "aud": ["urn:foo", "urn:bar"], # JWT 所针对的收件人
    'data': {  # 内容,一般存放该用户id和开始时间
        'id': 1, #用户ID
        'login_time': 2, #登录时间
    },
}

s = jwt.encode(dic, 'secret', algorithm='HS256')  # 加密生成字符串
print(s)
a = jwt.decode(s, options={"verify_signature": False}) #在不进行验证的情况下读取声明集
print(a)
b = jwt.get_unverified_header(s) #读取header而不进行验证
print(b)
s = jwt.decode(s, 'secret', issuer='lianzong', audience="urn:foo",algorithms=['HS256'])  # 解密,校验签名  多个值访问audience=["urn:foo", "urn:bar"]
print(s)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值