JMeter-接口签名校验

前言

很多HTTP接口在传参时,需要先对接口的参数进行数据签名加密

如pinter项目中的签名接口 http://localhost:8080/pinter/com/userInfo

参数为: {"phoneNum":"123434","optCode":"testfan","timestamp":"1211212","sign":"fdsfdsaafsasfas"} 其中,sign字段是按照特定算法进行加密后的数据

本接口的签名算法为 sign=Md5(phoneNum+ optCode+ timestamp)

对于这样的加密接口,除了导入加密的jar包和添加BeanShell写入代码以外,今天给大家介绍一种比较简单的方法

首先我们了解一下参数化函数:

CSV文件读取:${__CSVRead(D:data.txt,0,)}

随机数:${__Random(1,100,)}

随机字符串:${__RandomString(8,abcdefghigklmnopqrstuvwxyz0123456789,)}

时间戳:${__time(,)} 生成唯一UUID:${__UUID}

注:上述函数都可以将结果保存到一个变量里,函数的最后一个参数为变量名称

一:添加签名接口http请求,写入JSON格式参数,添加HTTP信息头管理器

二:phoneNum和timestamp的值需要使用函数助手生成随机值

三:对sign的参数进行拼接

两种函数助手MD5加密参数化函数:

(1)"sign":"${__MD5(${phone}testfan${timeStamp},)}"

(2)"sign":"${__digest(MD5,${phone}testfan${timeStamp},,,)}"

四:写入参数化的参数化函数

五:添加监听器-察看结果树,点击运行,从响应结果得知,接口签名校验成功

原文地址:https://www.cnblogs.com/zhangwuxuan/p/12345448.html