Socket的三个关联函数
/*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的三个关联函数的更多相关文章
- 【socket】Socket的三个功能类TCPClient、TCPListener 和 UDPClient
Socket的三个功能类TCPClient.TCPListener 和 UDPClient (转) 应用程序可以通过 TCPClient.TCPListener 和 UDPClient 类使用传输控制 ...
- synapse socket总结三:心跳(Heartbeat)
首先转载一篇关于心跳的博文解释: 所谓的心跳包就是客户端定时发送简单的信息给服务器端告诉它我还在而已.代码就是每隔几分钟发送一个固定信息给服务端,服务端收到后回复一个固定信息如果服务端几分钟内没有收到 ...
- Loadrunner中socket协议中的三个关联函数
这3个函数其实都可以动态获取运行中收到的数据包中的数据,只要跟在要获取的收取数据包脚本后面即可.其中:lrs_save_searched_string和lrs_save_param如果buf_desc ...
- Socket的三个功能类TCPClient、TCPListener 和 UDPClient (转)
应用程序可以通过 TCPClient.TCPListener 和 UDPClient 类使用传输控制协议 (TCP) 和用户数据文报协议 (UDP) 服务.这些协议类建立在 System.Net.So ...
- python socket+tcp三次握手四次撒手学习+wireshark抓包
Python代码: server: #!/usr/bin/python # -*- coding: UTF-8 -*- # 文件名:server.py import socket # 导入 socke ...
- tcp,Socket,三次握手和四次挥手的图示
tcp的图示: Socket的图示: Socket原理图示: “三次握手”图示介绍: 客户端向服务器发送一个SYN J 服务器向客户端响应一个SYN K,并对SYN J进行确认ACK J+1 客户端再 ...
- 网络编程-socket(三)(TCP长连接和UDP短连接、时间服务器)
详解地址:https://www.cnblogs.com/mys6/p/10587673.html TCP server端 import socketsk = socket.socket() # 创建 ...
- 我能想到的最浪漫的Java网络教程之Socket,三步到位!!!
简说 如果要使用Java中的TCP/IP通过网络连接到服务器,则需要创建一个java.net.Socket对象以连接到服务器.如果使用JavaNIO,则还可以在JavaNIO中创建SocketChan ...
- 写自己的Socket框架(三)
在通信写完了以后,应用层接收到Socket抛上来的byte[],这个时候对于实际的写逻辑的开发者来说,这样的数据并不友好,我们就需要在应用层统一一个包的规则(应用层协议),处理完以后,然后再传给实际的 ...
随机推荐
- LOL电影天堂下载攻略
LOL电影天堂&&飘花电影网下载攻略 CreateTime--2017年7月27日08:52:29Author:Marydon 以进击的巨人为例 下载地址:http://www.l ...
- INV*更新物料信息
物料 PROCEDURE update_item(p_init_msg_list IN VARCHAR2 DEFAULT fnd_api.g_false, x_return_status OUT NO ...
- HTML 事件属性(如:onsubmit)
学习啥都需要一个基础 基础很重要: HTML 4 的新特性之一是可以使 HTML 事件触发浏览器中的行为,比方说当用户点击某个 HTML 元素时启动一段 JavaScript. 在现代浏览器中都内置有 ...
- js实现同时提交多个表单
http://www.jb51.net/article/17284.htm 两种方法: 1.使用ajax异步提交表单.方法简单,jQuery插件等都能实现. 2.使用iframe.方法很原始,较麻烦. ...
- Android Design与Holo Theme详解
在 国内,有个很有意思的现状.一方面,几个国内最大的公司/企业的客户端/应用依旧冥顽不灵,丝毫不愿意遵循 Android Design,以各种扯淡的理由坚持使用 iOS UI 或者 Metro UI, ...
- 如何让iOS模拟器也能测试蓝牙4.0程序?
买一个CSR蓝牙4.0 USB适配器,插在Mac上 在终端输入sudo nvram bluetoothHostControllerSwitchBehavior="never" 重启 ...
- AHK GUI开发示例
GUI.AHK Gui, Add, Text, gAllSearchA W120, 搜索引擎类: Gui, Add, Checkbox, gMySubroutine Checked HwndMyEdi ...
- psr-0和psr-4命名规范(未完)
这些命名规范都是为为自动加载服务(避免项目中有很多的include和require) psr-0: 1.命名空间必须与绝对路径一致 2.类名首字母必须大写 3.除入口文件外,其他“.php”必须只有一 ...
- cocos2dx 3.3 异步加载纹理
这里以3d场景加载为例,2d情况类似. 先同步加载模型数据和尺寸缩小了100倍的贴图,创建mesh.然后异步加载所有精细纹理并每加载完一个就替换一个,并进入场景. 如此做法的效果是当刚进入场景时看到的 ...
- android.animation(1) - ValueAnimator的ofInt(), ofFloat(), addUpdateListener(), addListener()(转)
一.概述 long long ago,我写过几篇有关Animation的文章,讲解了传统的alpha.scale.translate.rotate的用法及代码生成方法.其实这三篇文章讲的所有动画效果叫 ...