·

token简介以及python计算token的方法

Published at 2024-05-09 23:28:56Viewed 354 times
Professional article
Please reprint with source link

后端登陆实现需要用到token机制或者cookies机制。Token和cookies都可以用来存放用户信息。但是token可以将信息存放在浏览器中的localstorage中,不占用服务器内存,而cookies则需要在每次请求中送往服务器中,吃服务器资源。同时,token作为一种比cookies更新的技术,有更多的优势,可以参考token和cookie的区别


每个用户都可以对应一个token值。Token可以由用户名+密码+时间,经过哈希加密得到,也可以直接由用户名和密码经过加密算法加密后得到。复杂程度取决于自己。加密后得到的token值,存放在会话session中。


Python使用哈希算法进行加密,计算token值:

import hashlib

md5 = hashlib.md5()
md5.update((username+password+"1258"+str(time.time())).encode())
token = md5.hexdigest()

也可以使用python的pip库pyjwt来实现加密,计算token值。

$ pip install pyjwt

Jwt输入的是字典型变量,以下为该函数的示例:

>>> import jwt
>>> key = "secret"
>>> encoded = jwt.encode({"some": "payload"}, key, algorithm="HS256")
>>>print(encoded)
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzb21lIjoicGF5bG9hZCJ9.4twFt5NiznN84AWoo1d7KO1T_yoc0Z6XOpOVswacPZg
>>> jwt.decode(encoded, key, algorithms="HS256")
{'some': 'payload'}

关于pyjwt的更多用法,参考官方文档

Usage Examples — PyJWT 2.8.0 documentation

0 人喜欢

Comments

There is no comment, let's add the first one.

弦圈热门内容

Get connected with us on social networks! Twitter

©2024 Guangzhou Sinephony Technology Co., Ltd All Rights Reserved