接⼝测试⼊参需要加密后再传值,怎么写脚本进⾏加密?
加密接⼝怎么测试?
脚本⽅式链接:blog.51cto/icestick8586/2503069
jmeter⽅式:blog.csdn/weixin_44896406/article/details/118628755
(1)写个函数或者⽅法,把要加密的参数使⽤这个函数过滤⼀遍,等于就是说把数据丢进去,加密了之后,再通过这个加密好的
数据传输过去就可以了!!
(2)⾄于⽤什么加密算法,这个要根据产品和⾃⼰的业务场景和需求不管是AES或者公钥私钥也好看⾃⼰的选择
(3)也可能是编码的问题,就直接⽤base64码把需要传输加密的东西通过base64返回base64码,然后再放进去,然后再进⾏传输
(4)这是编码不是加密,真的要加密的话,⾸先把要⽤的参数加好密之后再被传输出去,传输的过程中把传输的数据进⾏⼀次加密和封装之后再发送过去
(5)⽤jmeter做接⼝测试⽤post-processor加beanshell进⾏加密解密,再从⽇志中查参数,然后具体的加密算法要看需求
(6)每个测试⼯具提供的加密算法是不⼀样的,⼯具不⼀样加密算法也是不⼀样的
(7)如果不⽤⼯具的话应该怎么做?==》看如下的代码
import requests
import hashlib
import json
# 组建接⼝
# 第⼀步:拿到接⼝⼊参==》2个参数
# data 必须参数,对应的值是正常传递的参数组装成json字符串,组装的json字符串⾥⾯必须包含appId,
# sign 必须参数,对应得值是data值得md5值。
BASE_URL = '118.24.XXX.XXX:8080/api/login?'
appId=4001
code='033qdUtz0LcJsc19tZxz09cTtz0qdUt6'
app_secret_key='dc6e426478b2d29a8e1ad70eb48660f4'
# 第⼆步:组装data参数
data={"appId":4001,"code":"033qdUtz0LcJsc19tZxz09cTtz0qdUt6"}
# a = str(data)
# print a
# b = '{'+a[45:58] + ','+a[1:43]+'}'
# print b
# 第三步:组装加密字符串拿到sign签名
value = 'data={"appId":4001,"code":"033qdUtz0LcJsc19tZxz09cTtz0qdUt6"}&key=dc6e426478b2d29a8e1ad70eb48660f4'
md5 = hashlib.md5()
md5.update(value)app接口测试工具
sign = md5.hexdigest()
print sign
# 第四步:发送接⼝请求
dic = {"data":'{"appId":4001,"code":"033qdUtz0LcJsc19tZxz09cTtz0qdUt6"}',"sign":sign}
params = {
"code":'033qdUtz0LcJsc19tZxz09cTtz0qdUt6',
"params":json.dumps(dic)
}
response = (url=BASE_URL,params=params)
print response.url接⼝返回结果:{"data":"b363e1c071d84757bf164121bad91ede","statusCode":"200"}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论