使用itsdangerous生成临时身份令牌
安装
pip install itsdangerous
使用方法:
import itsdangerous
salt='sdaf'#加盐,指定一个盐值,别让别人知道哦,否则就可以解密出来了
t=itsdangerous.TimedJSONWebSignatureSerializer(salt,expires_in=600)#过期时间600秒
# ==============如何加密==================
res=t.dumps({'username':'yangfan','user_id':1})# 在t中加入传输的数据
token=res.decode()#指定编码格式
print(token)
# 得到的数据如下,就是包含数据和盐值的token了,只有在知道盐值的时候才能被解密出来
#eyJhbGciOiJIUzUxMiIsImlhdCI6MTU0MTgxOTcyMCwiZXhwIjoxNTQxODIwMzIwfQ.eyJ1c2VybmFtZSI6InlhbmdmYW4iLCJ1c2VyX2lkIjoxfQ.VjCgry9Sr-4iRsK_MHYThcn_O7js9BERrXzocc7BI1aavC3N3s3e0wWMsvq2-Qp-ol_WNMD23wxiYRrA1kwCbg
# ======================加密的数据如何解析=================
res=t.loads('eyJhbGciOiJIUzUxMiIsImlhdCI6MTU0MTgxOTcyMCwiZXhwIjoxNTQxODIwMzIwfQ.eyJ1c2VybmFtZSI6InlhbmdmYW4iLCJ1c2VyX2lkIjoxfQ.VjCgry9Sr-4iRsK_MHYThcn_O7js9BERrXzocc7BI1aavC3N3s3e0wWMsvq2-Qp-ol_WNMD23wxiYRrA1kwCbg')
print(res)
# 返回的数据如下:
# {'username': 'yangfan', 'user_id': 1}
# 我们试一下将解析的数据改一个字母,或者超过了过期时间
网友评论