一。 从同事那里取的经。 lr变量和程序变量 简单看来是有区别的。 例如lr脚本中可以使用c语言,则c语言定义的变量 和 lr的变量不是通用的,需要转换。 具体请看如下的一段代码。 如果 lr参数名为 "parameter" ,他的值是一个字符串“hello” 则 引用这个参数时需要这么用 "{parameter}" vuser_init() {
char hello[1024]; //c语言字符串
strcpy(hello,"hello world");
lr_save_string(hello, "hello_para"); //将hello变为lr的变量,变量名称为{hello_para}
lr_log_message(lr_eval_string("{hello_para}")); //如何把lr变量转换为字符串,并在log里打印出来
lr_log_message("######################################begain to test#########################################");
web_reg_save_param("tgt","NOTFOUND=WARNING","LB=","RB=","ORD=ALL",LAST);// 注册一个获取param的程序,这句话这个会将下面的函数返回值(也就是请求页面后返回的数据)里查找到匹配的字符串,并赋值给一个参数的这个lr变量名 web_submit_data("get", "Action=http:", "Method=POST", "RecContentType=text/xml", "Referer=", "Snapshot=t1.inf", "Mode=HTML", ITEMDATA,
LAST);
// lr_log_message(lr_eval_string("{string1}"));
web_reg_save_param("string1","NOTFOUND=WARNING","LB=","RB=","ORD=ALL",LAST); web_submit_data("get", "Action=", "Method=POST", "RecContentType=text/xml", "Referer=", "Snapshot=t1.inf", "Mode=HTML", ITEMDATA, "Name=param", "Value={string1}", ENDITEM, LAST);
// lr_log_message(lr_eval_string("{st_1}"));
lr_save_string(lr_eval_string("{st_1}"), "param2"); //就是把lr变量{st_1} 的值付给 lr变量 {param2}.
return 0; }
二。 int型转成字符串,转lr的变量 Action() { int i=0;
//char b[100] = "hello"; char b[100] = "";
for (;i<20000;i++) {
itoa(i,b,10);
lr_save_string(b,"Param");
//lr_log_message("%s",b);
lr_log_message(lr_eval_string("{Param}"));
web_custom_request("push_2", "URL=", "Method=POST", "Resource=0", "RecContentType=text/plain", "Referer=", "Mode=HTML", "Body=", LAST);
} return 0; }
|