关联(correlation):简单来说就是将客户端发送请求后,服务器返回的动态数据信息保存到一个参数中。
LR中对参数关联分两种,一种是手工关联,一种是自动关联,自动关联,按CTRL+F8 可以进行自动关联,这种方法可以满足一些简单的需求,使用比较方便。但当LR工具找不到关联时,我们就要考虑手动关联了。
语法:
int web_reg_save_param(const char *ParamName, <list of Attributes>, LAST);
参数说明:
ParamName: 存放得到的动态内容的参数名称
list of Attributes: 其它属性,包括:Notfound, LB, RB, RelFrameID, Search, ORD, SaveOffset, Convert, SaveLen。属性值不分大小写
Notfound: 当在返回信息中找不到要找的内容时应该怎么处理
Notfound=error: 当在返回信息中找不到要找的内容时,发出一个错误讯息。这是缺省值。
Notfound=warning: 当在返回信息中找不到要找的内容时,只发出警告,脚本也会继续执行下去不会中断。
LB( Left Boundary ) : 返回信息的左边界字串。该属性必须有,并且区分大小写。
RB( Right Boundary ): 返回信息的右边界字串。该属性必须有,并且区分大小写。
RelFrameID: 相对于URL而言,欲查找的网页的Frame。此属性质可以是All或是数字,该属性可有可无。
Search : 返回信息的查找范围。可以是Headers,Body,Noresource,All(缺省)。该属性质可有可无。
ORD : 说明第几次出现的左边界子串的匹配项才是需要的内容。该属性可有可无,缺省值是1。如为All,则将所有找到的内容储存起来。
SaveOffset : 当找到匹配项后,从第几个字元开始存储到参数中。该属性不能为负数,缺省值为0。
SaveLen :当找到匹配项后,偏移量之后的几个字元存储到参数中。缺省值是-1,表示一直到结尾的整个字串都存入参数。
web_reg_save_param("login", "LB=name="userSession" value="", "RB="/>", //双引号需要用反斜杠""进行转义 LAST);
基本信息:
1、web_reg_save_param注册一个请求,从下一个操作功能,服务器返回信息中查找并保存文本字符串,并保存在服务器响应下一个操作功能。
2、当脚本中启用了“发生错误继续执行(Contiinue on Error)”时,即使Notfound被设置为“Error”,在找不到边界时,脚本仍将会继续执行,但会将错误消息写入日志文件
3、在边界之后指定“/IC”,即LB/IC、RB/IC,则表示忽略边界参数的大小写;在边界之后指定“/BIN”,即RB/BIN、RB/BIN,则表示为二进制数据
4、属性值不区分大小写,如”Search=all”
5、保存参数最大不能超过256字节,如果超过256字节请使用web_set_max_html_param_len (const char *length )函数扩大参数保存范围例如:web_set_max_html_param_len ("1024"); //扩大参数最大保存范围为1024字节
PS:还可以用web_reg_save_param当检查点用。