验签
接口不想让其他人使用时,可以使用上——验签:
-
每次发送请求时需要携带一个参数,可以传在header里面,也可以传在body里面 【我们写的时候,每次发请求,都根据验签算法,生成签名传过去】
-
根据提供的算法,生成一个签名,每次请求的时候带上这个签名-->每次发请求,根据验签算法,生成签名传过去
- 后端验证签名通过了,这个请求时一条正常的请求,否则不处理这条请求
- 过程:case-->http_request--->加签函数-->通过加签函数+签名--->可进行访问
import fastapi import hashlib server = fastapi.FastAPI() salt = "ssz-abc" @server.post('/api/test') def test(name:str,addr:str,phone:str,auth:str): s = '%s%s%s%s'%(name,addr,phone,salt) s = hashlib.md5(s.encode()).hexdigest() #加密 if auth == s: return {"code":0,"msg":"操作成功","name":name,'addr':addr,'phone':phone} else: return {"code":-1,"msg":"验签失败"}
接口参数加密:
- 每次请求传过来胡都是一个加密的字符串
- 先知道加密的算法时什么
- 每次发请求,都把参数加密
加密:
httpRequest url data --> sign -> data method request.post()
解密:
#拿到数据之后, response.text -> decrypt -> decrypt_data return decrypt_data
本文来自博客园,作者:他还在坚持嘛,转载请注明原文链接:他还在坚持嘛 https://www.cnblogs.com/brf-test/p/14258768.html