token简介以及python计算token的方法
后端登陆实现需要用到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
的更多用法,参考官方文档
暂无评论,来发布第一条评论吧!