当前位置: 首页 > news >正文

使用postman请求x5接口

x5接口简介

1.接口样例

{"header"{"appid":"bpmnew_fanwei","sign":"C033162E86E4CADE80C7EB44D68A5AD2","sign_type":"md5","url":"https://oa.mioffice.cn/api/bpm/xm/app/show/todoflow","method":""},"body":"{\"pageSize\":\"30\",\"userName\":\"liumingtao\",\"title\":\"\",\"currentPage\":\"1\",\"procDefIdPrefix\":\"65\"}"}

2.Base64加密、解密

  • 入参:参数形式:{‘header’:{‘appid’:’’,’sign’:’’},’body’:’’}
  • {"header":{"appid":"bpmnew_fanwei","sign":"5BE3B9F908ED976050D1204B257D84DC","sign_type":"md5","url":"https://oa.mioffice.cn/api/bpm/xm/app/show/workflow","method":""},"body":"{\"loginid\":\"liumingtao\"}"}

  • data后面的入参为接口入参加密后的数据

3.sign生成方法:

  • MD5:加密:http://www.bejson.com/enc/md5/‘
  • bpmnew_fanwei{"loginid":"liumingtao"}8150ACDEBB42C288F1293F8C5AF2CEF1:{"loginid":"liumingtao"}为body里的入参

   

步骤

步骤1:复制代码到 pre-request script中

var x5 = {

        run: function(appid,appkey) {

        if (typeof appid == "undefined") {

        appid = pm.environment.get("appid");

}

if (typeof appkey == "undefined") {

        appkey = pm.environment.get("appkey");

}

var self = this;

var tmpArr = {};

var reqData = request.data;

if (_.isObject(reqData)) {

        var keys = _.sortBy(_.keys(reqData));

        _(keys).forEach(function(key) {

                tmpArr[key] = reqData[key];

        }).value()

}

delete tmpArr.data;

var json_body = JSON.stringify(tmpArr).replace(/\\\\u/g, '\\u');

var sign = CryptoJS.MD5(appid + json_body + appkey, {asString: true}).toString().toUpperCase();

var data = {

        header :{

                appid : appid,

                sign : sign

        },

        body : json_body

};

data = JSON.stringify(data).replace(/\\\\u/g, '\\u');

pm.globals.set("data", CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(data)));

}

}

x5.run();

步骤2:添加环境变量

步骤3:输入请求信息

步骤4:选择环境变量

相关文章:

  • 回归预测 | MATLAB实现基于LightGBM算法的数据回归预测(多指标,多图)
  • BLIP和BLIP2
  • 后端项目连接数据库-添加MyBatis依赖并检测是否成功
  • mybatis的一级缓存和二级缓存
  • Mysql分区表
  • 从源代码出发,Jenkins 任务排队时间过长问题的解决过程
  • 删除容器挂载卷打包容器镜像并传到阿里云
  • C#8.0本质论第十六章--使用查询表达式的LINQ
  • 强推六款满分AI写作工具,需要自取
  • 输出SearchFacesResponse对象的JSON格式字符串回包乱码解决方案
  • 21、Resnet50 中包含哪些算法?
  • vite的使用
  • 开启gitlab中远程连接pgsql
  • 【Python-随笔】使用Python实现屏幕截图
  • Java研学-反射与内省
  • Django 博客开发教程 8 - 博客文章详情页
  • EventListener原理
  • input的行数自动增减
  • Java面向对象及其三大特征
  • Netty源码解析1-Buffer
  • PAT A1050
  • vue+element后台管理系统,从后端获取路由表,并正常渲染
  • 机器学习中为什么要做归一化normalization
  • 前端之React实战:创建跨平台的项目架构
  • 线性表及其算法(java实现)
  • python最赚钱的4个方向,你最心动的是哪个?
  • ​【原创】基于SSM的酒店预约管理系统(酒店管理系统毕业设计)
  • ​io --- 处理流的核心工具​
  • ​学习一下,什么是预包装食品?​
  • %@ page import=%的用法
  • (1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)
  • (6)STL算法之转换
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (论文阅读40-45)图像描述1
  • (一)Dubbo快速入门、介绍、使用
  • (一)Spring Cloud 直击微服务作用、架构应用、hystrix降级
  • (转)chrome浏览器收藏夹(书签)的导出与导入
  • .form文件_SSM框架文件上传篇
  • .net 7 上传文件踩坑
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .NET上SQLite的连接
  • @EnableWebMvc介绍和使用详细demo
  • [ Linux 长征路第五篇 ] make/Makefile Linux项目自动化创建工具
  • [20171106]配置客户端连接注意.txt
  • [android] 切换界面的通用处理
  • [Angular] 笔记 18:Angular Router
  • [BZOJ2208][Jsoi2010]连通数
  • [CareerCup] 12.3 Test Move Method in a Chess Game 测试象棋游戏中的移动方法
  • [LeetCode]—Copy List with Random Pointer 深度复制带“任意指针”的链表
  • [linux] 创建用户
  • [Manacher]【学习笔记】
  • [MicroPython]TPYBoard v102 CAN总线通信
  • [NAND Flash 6.1] 怎么看时序图 | 从时序理解嵌入式 NAND Read 源码实现
  • [node] Node.js的全局对象Global