zoukankan      html  css  js  c++  java
  • 自动化脚本测试,postman使用沉淀

    // 服务器地址
    var server = 'XXXXXXXXXXXX';
    //秘钥Key
    var secretKey = 'XXXXXXXXXXXX';
    //获取当前时间
    function createTime() {
    	return (new Date()).valueOf();
    }
    // 当前时间
    var time = createTime();
    //提交方式
    var method = request.method;
    // 获取post请求的参数
    var param = request.data;  
    // 获取get请求的参数
    var queryParam = pm.request.url.query.members;
    for (var i in queryParam) {
        if (queryParam[i].key == "Signature") {
            continue;
        }
        param[queryParam[i].key] = queryParam[i].value;
    }
    var keys = Object.keys(param), i, len = keys.length;
    keys.sort();//根据key经行排序
    var requestBody = "";
    var firstpass = true;
    // 构造数据为 key=param&key=param....字符串
    for(var index in keys){
    	  if(!firstpass){
    		requestBody += "&";
    	}
    	if(keys[index]=="create_time"){
    		param[keys[index]]=time;
    		console.log(param[keys[index]]);
    	}
    	requestBody += keys[index] + "=" + param[keys[index]];
    	firstpass = false;
    }
    var encodeURIdataServer = server+"?"+requestBody;
    // postman.setEnvironmentVariable('encodeURIdataServer', encodeURIdataServer);
    //sha1加密
    var Signature = CryptoJS.HmacSHA1(encodeURIdataServer,secretKey);
    // HMAC计算返回原始二进制数据后进行Base64编码
    var base64Signature = CryptoJS.enc.Base64.stringify(Signature);
    postman.setEnvironmentVariable('Signature', encodeURIComponent(base64Signature));
    

      

  • 相关阅读:
    C艹目录
    C艹重复输入小方法,for循环+while
    python with 语句妙用
    python with妙用
    Kali配置网卡静态信息
    Spring 之 注解详解
    html基础之 表单提交方法
    html 基础之 <link>标签
    android:padding和android:margin的区别
    css基础之 font的简写规则 以及 自定义 CSS3 @font-face详细用法
  • 原文地址:https://www.cnblogs.com/ChineseLiao/p/10257079.html
Copyright © 2011-2022 走看看