Scoket虚拟用户脚本主要有两种参数化方式:(1)直接创建参数(创建过程与在Web HTTP/HTML一致)(2)通过lrs_save_param_ex来创建参数。
【lrs_save_param_ex 函数说明】 功能:从buffer(解释:缓存)中取出数据存到一个参数中。 格式:lrs_save_param_ex(char *s_desc,char *type,char *buff,int offset,int length,char *encoding,char *param); 例如:lrs_save_param_ex("socket0","user",User_buffer(定义的缓存数据),0,14,"param_name") 参数说明: s_desc:识别一个socket的标识、描述。 type:buffer中的数据存入参数的类型。(1)user---存储用户数据;(2)static---存储一个静态的原始录制buffer数据;(3)received---存储通过lrs_receive收到的buffer数据。 buff: 存储参数数据的buffer。 offset: 从buffer中取参数的起始位置。 length: 从buffer中取参数的长度。 encoding:当以“user”形式存储数据到参数中时,需要制定user buffer的编码。有“ascii(NULL)”和“ebcdic”两种。当以“static”和“received”形式时,不需要设置此项。 param:参数的名字。 【在data.ws中创建参数】 1.创建过程与在Web HTTP/HTML一致,通过鼠标右键单击要参数化的数据进行参数化。 【在脚本中通过函数创建参数】 函数:lrs_sava_param_ex保存参数。
例如:lrs_save_param_ex("socket","user",Userbuffer,0,14,"param_name"); 过程:在Action通过上述函数创建一个参数“Param_name”,将数据存在此参数中,之后用参数替代data.ws中出现的数据。 【扩展】 如果想同时替换多个参数,定义一个字符串参数数组(直接参数化数组)看下如,可通过迭代多次Aciton来取得不同的参数。范例代码如下: 还有一种就是定义全局变量,让其循环取值,达到参数化效果 ,如图:
|