jhwhale 发表于 2014-12-22 16:42:33

将参数参数化后无法打印值

题目有点绕,大致情景是这样的:
发请求给服务器后,服务器返回给我一串类似这样的字符串: {"data": {xxxxxx},"code":"1"}

这是原始脚本,最后打印的是服务器返回的字符串:
        web_reg_save_param("hp_Advertisement_response",
                                           "LB=data",
                                           "RB=code",
                                           "Search=Body", LAST);

        web_custom_request("Advertisement",
                                           "URL=...",
                                           "Method=GET",
                                           "Resource=0",
                                           "Mode=HTTP",
                                           "EncType=text/html;",
                                           LAST);

        lr_output_message(lr_eval_string("{hp_Advertisement_response}"));


由于要多次发送不同的请求,我将其参数化了。但最后打印的是参数名而不是参数值即服务器返回的字符串:
        web_reg_save_param("{ParamName}",
                                           "LB=data",
                                           "RB=code",
                                           "Search=Body", LAST);

        web_custom_request("{RequestName}",
                                           "URL=...",
                                           "Method=GET",
                                           "Resource=0",
                                           "Mode=HTTP",
                                           "EncType=text/html;",
                                           LAST);

        lr_output_message(lr_eval_string("{ParamName}"));

请问怎样才能让他最后打印服务器返回的字符串呢?

simul404 发表于 2014-12-22 17:44:26

童鞋,你的编程还没学好哟,应该是酱紫的lr_output_message("我忘记加这个东东了~~%s",lr_eval_string("{ParamName}"));

jhwhale 发表于 2014-12-23 09:29:35

simul404 发表于 2014-12-22 17:44
童鞋,你的编程还没学好哟,应该是酱紫的lr_output_message("我忘记加这个东东了~~%s",lr_eval_string("{Pa ...

我试过了,结果是一样的,打印的还是参数名。。

simul404 发表于 2014-12-23 10:44:37

int web_reg_save_param( const char *ParamName, <List of Attributes>, LAST );

simul404 发表于 2014-12-23 10:56:30

int web_reg_save_param( const char *ParamName, <List of Attributes>, LAST );从方法上看,变量名应该是个静态的字符指针。也许只能放入"BianLiangMing"这种类型的参数,不能带括弧。PS:如果仅仅是打印变量名,无需对web_reg_save_param里的参数再进行参数化吧。

jhwhale 发表于 2014-12-23 17:21:51

simul404 发表于 2014-12-23 10:56
int web_reg_save_param( const char *ParamName, , LAST );从方法上看,变量名应该是个静态的字符指针。也 ...

好吧 这条路貌似行不通啊。。。
那除了简单的复制粘贴这个方法外 还有其他合适的方法将这个过程重复多次么(每次发送不同的请求并保存不同的返回值)?目前想到参数化、for循环和迭代貌似都做不到。

saharaqs 发表于 2014-12-28 16:35:07

lr_output_message(lr_eval_string("{lr_eval_string("{ParamName}")}"));
页: [1]
查看完整版本: 将参数参数化后无法打印值