/*lrs_save_param将静态或接收到的缓冲区保存到参数中*/
lrs_save_param (char *s_desc, char *buf_desc, char *param_name, int offset, int param_len);
参数:
s_desc:套接字标识符
buf_desc:缓冲区标识符
param_name:存入缓存数据的参数名称
offset:被保存到参数中的缓存区偏移量
param_len:要保存到参数中的字节数

/*lrs_save_param_ex将用户、静态或接收到的缓冲区保存到参数中*/
lrs_save_param_ex (char *s_desc, char *type, char *buff, int offset, int length, char *encoding, char *param);
参数:
s_desc:套接字标识符
type:要将灵气保存到参数中的缓冲区类型,有"user"(用户缓冲区)、"static"(data.ws中的静态缓冲区)和"received"(最后接收的缓冲区数据)三种
buff:和type的值有关,如果type的值是"user"则buff的值为指定的用户缓冲区,如果type的值是"static"则buff的值为指定的静态缓冲区,如果type的值是"received"则buff参数可以设为NULL
offset:缓存区偏移量
length:要保存到参数中的字节数
encoding:编码方式可以指定为"ascii"或"ebcdic",如果是用户缓冲区则NULL默认为"ascii",如果type为"static"或"received"则NULL默认为客户端编码方式
param:参数名称

/*lrs_save_searched_string将静态或接收到的缓冲区中搜索出现的字符串,将出现字符串的缓冲区部分保存到参数中*/
lrs_save_param (char *s_desc, char *buf_desc, char *param_name, char *left_boundary, char *right_boundary, int ordinal, int offset, int param_len);
参数:
s_desc:套接字标识符
buf_desc:缓冲区标识符
param_name:保存缓冲区数据的参数名称
left_boundary:标识要搜索缓冲区部分的左边界的字符串,格式为"LB=XXX"
right_boundary:标识要搜索缓冲区部分的右边界的字符串,格式为"RB=XXX"
ordinal:表示从第几次出现的左边界字符串开始搜索,如果指定了左边界则ordinal的值一定大于0,如果没有指定左边界则将ordinal设为-1
offset:要开始搜索的偏移量。如果指定了左边界则此偏移量相对于左边界计算,否则就从缓冲区的开始计算偏移量
param_len:要保存到参数中的缓冲区数据字节数。适用于没有指定右边界的情况,如果指定了右边界则设param_len为-1
例如:
lrs_save_searched_string("socket1", LRS_LAST_RECEIVED, "Parameter1", "LB/BIN=*", "RB/BIN=#", 2, 0, -1);

比较:

前两个函数都是根据偏移量和查找的数据的长度来定位所需要的数据,所以只适合于返回内容基本固定,只是所需要的数据动态变化,而且长度不变的情况。第三个函数是根据左右边界来定位要查找的数据,适用于数据长度变化的情况。lrs_save_searched_string与web协议中的web_reg_save_param函数作用基本一样,所不同的只是web_reg_save_param要放在需要关联的请求前,而lrs_save_searched_string是放在请求后。

转自:http://www.51testing.com/?uid-75241-action-viewspace-itemid-96549

Socket的三个关联函数的更多相关文章

  1. 【socket】Socket的三个功能类TCPClient、TCPListener 和 UDPClient

    Socket的三个功能类TCPClient.TCPListener 和 UDPClient (转) 应用程序可以通过 TCPClient.TCPListener 和 UDPClient 类使用传输控制 ...

  2. synapse socket总结三:心跳(Heartbeat)

    首先转载一篇关于心跳的博文解释: 所谓的心跳包就是客户端定时发送简单的信息给服务器端告诉它我还在而已.代码就是每隔几分钟发送一个固定信息给服务端,服务端收到后回复一个固定信息如果服务端几分钟内没有收到 ...

  3. Loadrunner中socket协议中的三个关联函数

    这3个函数其实都可以动态获取运行中收到的数据包中的数据,只要跟在要获取的收取数据包脚本后面即可.其中:lrs_save_searched_string和lrs_save_param如果buf_desc ...

  4. Socket的三个功能类TCPClient、TCPListener 和 UDPClient (转)

    应用程序可以通过 TCPClient.TCPListener 和 UDPClient 类使用传输控制协议 (TCP) 和用户数据文报协议 (UDP) 服务.这些协议类建立在 System.Net.So ...

  5. python socket+tcp三次握手四次撒手学习+wireshark抓包

    Python代码: server: #!/usr/bin/python # -*- coding: UTF-8 -*- # 文件名:server.py import socket # 导入 socke ...

  6. tcp,Socket,三次握手和四次挥手的图示

    tcp的图示: Socket的图示: Socket原理图示: “三次握手”图示介绍: 客户端向服务器发送一个SYN J 服务器向客户端响应一个SYN K,并对SYN J进行确认ACK J+1 客户端再 ...

  7. 网络编程-socket(三)(TCP长连接和UDP短连接、时间服务器)

    详解地址:https://www.cnblogs.com/mys6/p/10587673.html TCP server端 import socketsk = socket.socket() # 创建 ...

  8. 我能想到的最浪漫的Java网络教程之Socket,三步到位!!!

    简说 如果要使用Java中的TCP/IP通过网络连接到服务器,则需要创建一个java.net.Socket对象以连接到服务器.如果使用JavaNIO,则还可以在JavaNIO中创建SocketChan ...

  9. 写自己的Socket框架(三)

    在通信写完了以后,应用层接收到Socket抛上来的byte[],这个时候对于实际的写逻辑的开发者来说,这样的数据并不友好,我们就需要在应用层统一一个包的规则(应用层协议),处理完以后,然后再传给实际的 ...

随机推荐

  1. linux 挂载 ISO 文件

    sudo sudo mount -o loop SUSE-Linux-10.1-GM-DVD-x86_64.iso /media/cdrom/ sudo umount /media/cdrom

  2. mysql 5.5安装手记

    从MySQL5.5 开始就要用cmake安装,本次安装的版本为mysql-5.5.22.tar.gz #准备工作 yum install -y gcc gcc-c++ libtool autoconf ...

  3. 纯css实现单行”截取“

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. 5分钟教你配置命令行界面的163邮箱client

    网易163免费邮箱相关server信息: mutt 是命令行下的邮件client,它仅是管理邮件的组织编辑,邮件的发送和接收须要调用相应的程序. 这里用的各自是getmail 和 msmtp. 过程例 ...

  5. windows下安装redis及其客户端

    首先下载redis安装包:https://github.com/MSOpenTech/redis/releases 解压安装包到相应文件夹,任何盘符都行. 文件介绍:redis-server.exe: ...

  6. javascript使用parseInt函数时需要注意的一些问题

    这个问题大家可能会忽视,我在项目中就遇到了.写了提醒一下大家!!! 在用javascript的parseInt函数时,parseInt("08")或者parseInt(" ...

  7. EasyUI combobox的panelHeight自动高度

    在使用EasyUI的时候,有时会用到combobox组件,这里的记录数不是很固定,设置为auto可能会被挡住,设置固定高度时,option很少时,也很丑 所以这里给出我自己自动调整combobox的p ...

  8. 简单的并发测试工具 ab.exe ab.zip可下载 -摘自网络

    ab.exe是一个性能检测工具,是apache server中的一个小组件,使用简单,方便    下载地址:http://files.cnblogs.com/files/gossip/ab.zip   ...

  9. 如何查看Linux操作系统的位数

    如何查看Linux操作系统的位数 1.编程实现: 在程序中返回sizeof(int)的值,返回的结果是操作系统的字节数.若返回4则是32位操作系统,返回8即是64位. 2.2.getconf命令: g ...

  10. 获取http内容的php函数

    实现获取http内容的php函数. 代码如下: <?php function http_open($url, $data, $cookie = null, $method = "GET ...