一般的,邮件激活时,激活链接需要一个携带用户信息的url,来判断是激活的哪一个用户,且用户信息必须加密。python中可以使用 itsdangerous 来进行加解密。简单示例如下:
import time
from itsdangerous import TimedJSONWebSignatureSerializer as Serializer
serializer = Serializer('密钥', 5) # 密钥 和 加密时间
info = {"id": 3}
# 加密
mi_info = serializer.dumps(info)
print(mi_info)
print(type(mi_info)) # 加密后是bytes类型
mi_info = mi_info.decode() # 变成字符串
print("mi_info-->", mi_info)
# mi_info--> eyJhbGciOiJIUzI1NiIsImlhdCI6MTU1NzkyODU4NCwiZXhwIjoxNTU3OTI4NTg5fQ.eyJpZCI6M30.tGR4F7JTqx5zRImTW7Alrra7hMG12ViV7AA0-FYVLwg
time.sleep(5) # 如果超时就会报错
# 解密
yuan_info = serializer.loads(mi_info)
print("yuan_info-->", yuan_info)
然后我们就可以使用加密后的字符串进行url的拼接:
127.0.0.1/active/info=eyJhbGciOiJIUzI1NiIsImlhdCI6MTU1NzkyODU4NCwiZXhwIjoxNTU3OTI4NTg5fQ.eyJpZCI6M30.tGR4F7JTqx5zRImTW7Alrra7hMG12ViV7AA0-FYVLwg