python实现token签名认证
当你注册了一个网站,通常,网站会向你的邮箱里发一封激活邮件,邮件里会有一个url,只有当你点击这个url,才能激活你的用户身份。
如何完成身份确认呢?通常,邮箱里的那个url里会有一个token,这个token是所有问题的关键,当你点击url,网站后台会受到这个请求,得到这个token,网站必须通过这个token找到你是谁。使用 itsdangerous 模块,可以轻松的生成临时身份令牌,也就是token。
1.pyhon3.x中安装itsdangerous 模块:
pip install itsdangerous
import time from itsdangerous import TimedJSONWebSignatureSerializer as Serializer SECRET_KEY = 'owiernw365ertwet' # 设置token的SECRET_KEY # 生成token def create_token(): s = Serializer(SECRET_KEY, 3) # 设置token的过期时间是3秒钟 data = s.dumps({'user_id': 343,'user_name':'admin123'}) # token携带了user_id和user_name这2个重要信息 token = data.decode() print('生成的Token是: ',token) return token # 解析token # 解析token的时候也要使用SECRET_KEY,生成的token有效期是3秒,这里在解析前sleep 2秒钟,如果改为4秒钟,那么由于token已经过期,解析就会失败 def jx_token(token): time.sleep(2) serializer = Serializer(SECRET_KEY) try: data = serializer.loads(token) print('Token解析后是: ',data) except: print("Token解析失败,Token已经过期了") if __name__ == '__main__': tokens = create_token() jx_token(tokens)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!