postman环境变量的设置

背景:由于我们项目接口入参都有加密,每次接口调试都得启动项目,运行项目才能把对应的参数给传到后台,然后后台再解密参数,才能进行接口调试,很麻烦(启动前端项目),如果接口不进行加密,暴露在外面,又有点不安全的样子,那么怎么才能每次写接口前,就把对应的参数给加密好,然后进行调试勒? 当然是有的-------- postman强大的工具, 设置环境变量

你们平时有没有看到过这种?{{xxx}} 如下图: 这种就是设置了环境变量

 ​​​

那么,我们需要怎么弄勒? 

第一步:下载postman 并登录/注册

   下载地址点我

第二步:创建一个team

第三步:新建环境变量

新建一个环境变量,名字无所谓,然后设置参数:里面的参数是:接口每次请求必传不变的值(设置环境变量

第四步:

进入collections ,新建项目(目录),然后进行创建一个接口文档,里面内容就是我们这个接口的内容,参数,公共参数就用环境变量 {{变量名}} ,右上角选择我们建的环境变量

 这个地址也可以写成公共的

 ,好接下来,就是亮点了

第五步:pre-request script

请求发送之前需要执行的代码片段, 这里也就是我说的,我们需要加密参数,然后再请求接口

let _stringifySorted = function(query) {
	let keys = Object.keys(query).sort();
	let list = keys.filter(function(item) {
		return item != 'sign';
	});
	let pairs = list.reduce(function(collect, key) {
		let p = {};
		p[key] = query[key];
		return collect.concat(key).concat(p[key]);
	}, []);
	return pairs.join('');
};

let provider = pm.environment.get('provider')
let appKey = pm.environment.get('appKey')
let secret = pm.environment.get('secret')
let timeStamp = Math.round(new Date().getTime());

pm.environment.set('timeStamp_env', timeStamp.toString())

let req = request.data;
req['timeStamp'] = timeStamp
req['provider'] = provider
req['appKey'] = appKey

let search = _stringifySorted(req)
let sign = CryptoJS.MD5(secret + search + secret)

pm.environment.set('sign_env', sign.toString().toUpperCase())

这里面包含了一些postman的自身语法,相关语法请看官网,需要根据自己项目进行改造,

更多 pre-request script 语法请到官网查看, 链接点我 

ok,大功告成

 如果小伙伴们有什么疑问,欢迎下面评论。欢迎指正。如还有什么不懂的加我 QQ:517861659

如果没有及时回复,可以点我先问问AI机器人https://chatgpt.byabstudio.com/login?code=202307011314  

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值