postman 发送MD5加密签名请求
1.设置环境变量
2.请求接口实例
3. 询价签名 :sign =slon + slat+ timestamp +token 对字符串sign做md5,得到32位小写的sign
import hashlib
getprice_sign =slon + slat+ timestamp +token
getprice_sign=hashlib.md5(getprice_sign.encode('utf-8')).hexdigest()
print("询价签名是:",getprice_sign)
4. 因为要自动生成随机数、md5签名等传给接口,然后调用接口,即在请求前做好这些准备工作,所以要在Pre-request Script标签中编写脚本
//获取预先设置为环境变量的appid和secretKey
slon = pm.environment.get("slon");
slat = pm.environment.get("slat");
timestamp=pm.environment.get("timestamp");
token=pm.environment.get("token");
//定义一个由slon、slat、timestamp、密钥组合成一个字符串
var str = slon + slat + timestamp + token;
console.log(str);
//将str进行md5加密
var strmd5= CryptoJS.MD5(str).toString();
console.log(strmd5);
pm.environment.set("sign", strmd5); //将加密后的签名设置为环境变量方便后续调用
5.接口请求成功
参考博客:https://www.cnblogs.com/hanmk/p/11093109.html
6. 创单接口要用到 estimate_id,创建订单时使用,有效期10分钟
{
"code": 10000,
"message": "successful",
"content": {
"distance": 25000,
"prices": [
{
"product_type": "express-car",
"ride_type": "ly_express",
"estimate_id": "7af2959457234faeb9aafabb31ea725cGoUp",
"dynamic_rate": 1,
"estimate_price": 4515
},
{
"product_type": "private-car",
"ride_type": "ly_compact",
"estimate_id": "e1c4e3e8601946868212bb0e3ab6e181GoUp",
"dynamic_rate": 1,
"estimate_price": 7781
}
var jsondata = JSON.parse(responseBody);
var id= jsondata.content.prices[0].estimate_id; #这里注意层级关系,鼓捣了半天
pm.environment.set("estimate_id", id);