1、拼接字符串后进行MD5加密
lr脚本使用c语言编写时,首先加载md5.h头文件,再使用头文件中的加密函数GetMd5FromString对目标字符串进行加密,过程如下。
md5头文件下载附件:下载地址 。先将md5头文件导入到lr安装目录下的imclude文件夹中。
编辑脚本:
vuser_init() { char sign_noMD5_string[50]; char sign_MD5_string[50]; //保存用于字符串拼接的参数 lr_save_string("aaaa","appid"); lr_save_string("KJOIHAOIDHF123","SecretKey"); //获取时间戳 web_save_timestamp_param("timestamp", LAST); //按appid+timestamp+SecretKey的顺序拼接字符串,拼接后保存到sign_noMD5_string数组 strcat(sign_noMD5_string,lr_eval_string("{appid}")); strcat(sign_noMD5_string,lr_eval_string("{timestamp}")); strcat(sign_noMD5_string,lr_eval_string("{SecretKey}")); //将sign_noMD5_string参数进行加密,加密后保存到sign_MD5_string数组 GetMd5FromString(sign_noMD5_string,sign_MD5_string); lr_save_string(sign_MD5_cloudPlatform,"sign"); //因数组没法直接被作为参数调用,所以将数组中的元素重新保存为sign参数中。 return 0; }
2、发送请求获取响应中的token值
编辑脚本:
vuser_action() { web_reg_save_param("token", "LB=", "RB=", "Search=Body",LAST); //提取响应正文中的token值 lr_start_transaction("getToken"); //启动事务 web_custom_request("get_token", "URL=........access-token?appId={appid}&sign={sign}×tamp={timestamp}", "Method=GET", "Resource=0", "Referer=", "Mode=HTML", "Snapshot=t1.inf", LAST); lr_output_message("token:%s",lr_eval_string("{token}")); //打印获取到的token值 lr_end_transaction("getToken", LR_AUTO); //结束事务 return 0; }