https://www.liangzl.com/get-article-detail-39672.html

https://www.cnblogs.com/artoftest/p/7277996.html

https://blog.csdn.net/Stephen_shijun/article/details/86599144

https://blog.csdn.net/russ44/article/details/56009084

https://blog.csdn.net/Nancycyy/article/details/51423868

流程:测试数据--加密--请求服务器--获取返回值--解密--提取token值--作为下个请求的参数

1.加解密jar包
代码:

加解密代码
2.BeanShell 使用
(1)请求数据data加密,BeanShell PreProcessor

import AES.AESUTil; //调用加解密的jar包
String data1 ="{\"data\":\"111\",\"userName\":\"${userName}\"}";//输入请求,userName可以获取
String data=AESUTil.AEept(data1); //调用加密算法,加密data1,得到加密串data值
vars.put("data",data); //输出加密data值
${userName}可以是从CSV Data Set Config 取值

(2)http请求发送

(3)返回数据解密,及提取token值,BeanShell PostProcessor

import AES.AESUTil;//调用加解密的jar包
import org.json.JSONObject;//调用json的jar包

String response = prev.getResponseDataAsString();//得到返回数据存在response
String Pcontent=AESUTil.BEept(response); //解密返回数据response,保存在Pcontent
//vars.put("Pcontent",Pcontent);//输出解密返回的数据
JSONObject data_obj = new JSONObject(Pcontent);//新建json串,将string类型的Pcontent转换值保存
String errorCode1 = data_obj.get("errorCode");//截取json串data_obj返回值中的errorCode
String code ="0000";//设定固定的返回值code
if (errorCode1.equals(code)){//当返回值errorCode与设定code值相等时,执行下面的内容
vars.put("userNo",data_obj.get("result").get("userNo").toString());
//截取json串errorCode中的返回值中result下的userNo
vars.put("Token",data_obj.get("result").get("accessToken").toString());
//vars.put("errorCode1",errorCode1);
}
else
vars.put("errorCode1",errorCod1);//返回值errorCode1不为0000,打印返回值errorCode1

(3)BeanShell断言

import AES.AESUTil;
import org.json.JSONObject;
prev.setDataEncoding("utf-8");//解决中文乱码问题
String response = prev.getResponseDataAsString();
String Pcontent=AESUTil.BEept(response);

JSONObject data_obj = new JSONObject(Pcontent);
String error1 = data_obj.get("errorCode");
String code ="0000";
//当结果error1与设定值不符时,在断言打印出来失败的error值
if (!error1.equals(code)){
Failure = true;
FailureMessage = Pcontent;
}
(4)Debug Sampler的使用

默认的设置即可,上面的vars.put()值都能显示在里面,调试的时候可以用

3.调用jar包的问题
二种方法

(1)直接放到jmeter/lib 的目录下

(2)在jmeter.jmx的测试计划下引用

---------------------
作者:qie134
来源:CSDN
原文:https://blog.csdn.net/qie134/article/details/83306222
版权声明:本文为博主原创文章,转载请附上博文链接!

jmeter处理接口加密和解密的更多相关文章

  1. jmeter 请求发送加密参数(加密接口测试一)

    最近在做http加密接口,请求头的uid参数及body的请求json参数都经过加密再发送请求,加密方式为:ase256.所以,jmeter发送请求前也需要对uid及json参数进行加密.我这里是让开发 ...

  2. jmeter 请求发送加密参数

    最近在做http加密接口,请求头的uid参数及body的请求json参数都经过加密再发送请求,加密方式为:ase256.所以,jmeter发送请求前也需要对uid及json参数进行加密.我这里是让开发 ...

  3. Java_DES 加密和解密源码

    Java密码学结构设计遵循两个原则: 1) 算法的独立性和可靠性. 2) 实现的独立性和相互作用性. 算法的独立性是通过定义密码服务类来获得.用户只需了解密码算法的概念,而不用去关心如何实现这些概念. ...

  4. PHP 加密 和 解密 方法

    关于Discuz的加密解密函数,相信大家都有所了解,该authcode函数可以说是对PHP界作出了重大的贡献,真的发觉discuz这个函数写的太精彩啦. 研究了一下这个算法,总的来说可以归纳为以下三点 ...

  5. mvc url路由参数的加密和解密

    查看某个信息的时候一般会在url上加上该信息在数据库中对应的主键id(而且一般是自增的) url是这样子的 xxxDetail/1 , 虽然对于我们开发人员来说可以这种显式的数据库主键会方便调试过程, ...

  6. 浅谈.NET中加密和解密的实现方法分享

    这篇文章介绍了.NET中加密和解密的实现方法,有需要的朋友可以参考一下 .NET将原来独立的API和SDK合并到一个框架中,这对于程序开发人员非常有利.它将CryptoAPI改编进.NET的Syste ...

  7. Flash型单片机的加密与解密

    厂商利用单片机进行产品开发时,都会关心其代码和数据的保密性.考虑到用户在编写和调试代码时所付出的时间和精力,代码的成本是不言而喻的.    早期的单片机,代码是交给芯片制造商制成掩膜ROM.有两种加密 ...

  8. php接口数据加密、解密、验证签名代码实例

    php接口数据加密.解密.验证签名 代码非常easy,这里就不多废话了,直接奉上代码 <?php /** * 数据加密.解密.验证签名 * @edit http://www.lai18.com ...

  9. Java DES 加密和解密源码(转)

    原文地址:http://www.oschina.net/code/snippet_727646_18383 Java密码学结构设计遵循两个原则: 1) 算法的独立性和可靠性. 2) 实现的独立性和相互 ...

随机推荐

  1. Linux常用指令全集

    Linux简介及Ubuntu安装 常见指令 系统管理命令 打包压缩相关命令 关机/重启机器 Linux管道 Linux软件包管理 vim使用 用户及用户组管理 文件权限管理 大牛笔记-www.weix ...

  2. PHP Web Server 实例

    通过WebService,我们可以调用部署在其它地方的程序,而不用关心被调用的程序是在什么平台用什么语言编写的.这里我们使用php调用. 在php4时代调用WebService大部分使用的nusoap ...

  3. CSS固定定位实现右下角可关闭广告

    代码: <!DOCTYPE html><html lang="zh-cn"><head> <meta charset="UTF- ...

  4. Spark2.0基于广播变量broadcast实现实时数据按天统计

    package com.gm.hive.SparkHive; import java.text.SimpleDateFormat; import java.util.Arrays; import ja ...

  5. hr员工数据分析(实战)

    hr员工数据分析项目实战 (数据已脱敏) 背景说明 某公司最近公司发生多起重要员工意外离职.部分员工工作缺乏积极性等问题,受hr部门委托,开展数据分析工作. 经与hr部门沟通,确定以下需求: 制定数据 ...

  6. Tomcat支持SSL加密网站

    配置Tomcat,以支持SSL对网站加密,关键性配置如下: 思路:在tomcat服务器web1上做相应配置->客户端测试. 1.创建加密用的私钥和证书文件 [root@web1 ~]# keyt ...

  7. 【LeetCode】二分 binary_search(共58题)

    [4]Median of Two Sorted Arrays [29]Divide Two Integers [33]Search in Rotated Sorted Array [34]Find F ...

  8. [web 安全] php随机数安全问题

    and() 和 mt_rand() 产生随机数srand() 和 mt_srand() 播种随机数种子(seed)使用: <?php srand(123);//播种随机数种子 for($i=0; ...

  9. $2019$ 暑期刷题记录1:(算法竞赛DP练习)

    $ 2019 $ 暑期刷题记录: $ POJ~1952~~BUY~LOW, BUY~LOWER: $ (复杂度优化) 题目大意:统计可重序列中最长上升子序列的方案数. 题目很直接的说明了所求为 $ L ...

  10. jquery用法第二波

    过滤器 属性过滤选择器: $("div[id]")选取有id属性的<div> $(“#id”) $("div[title=test]")选取titl ...