LR接口测试---socket
前提条件:
编译:javac TcpServer.java
启动:java TcpServer
============================================
代码示例:
1 #include "lrs.h" 2 3 Action() 4 { 5 6 //事务开始 7 lr_start_transaction("socket"); 8 9 //建立socket连接 10 lrs_create_socket("socket0", "TCP", "RemoteHost=127.0.0.1:8888", LrsLastArg); 11 12 //发送数据 13 lrs_send("socket0", "buf0", LrsLastArg); 14 15 16 17 lrs_set_recv_timeout(1,0);//设置连接超时时间为1秒 18 19 lrs_set_recv_timeout2(1,0);//设置接受数据超时时间为1秒 20 21 //接收数据 22 lrs_receive("socket0", "buf1", LrsLastArg);//如果定义的长度与返回的长度不匹配执行的时候会一直去读,默认是停留10秒 23 24 25 26 //获取服务器返回的数据,并保存到一个参数RecivedData中。NULL无所谓哪个buf都可以。0为偏移量(从第几位开始取数据),-1取全部的数据(取数据的长度) 27 //lrs_save_param("socket0",NULL,"RecivedData",3,7); //获取的是SUCCESS 28 29 30 lrs_save_searched_string("socket0",NULL,"RecivedData","LB/BIN=|","RB/BIN=|",3,0,-1);//右边界不能和lenth同时存在;如果指定了右边界,取值长度必须是-1;如果不指定右边界,可以用NULL代替) 31 //上方3代表取值序列,即第三个| 32 33 lr_output_message ("============%s==============",lr_eval_string ("<RecivedData>")); 34 if(strcmp(lr_eval_string ("<RecivedData>"),"1000913") ==0 ){ 35 36 lr_end_transaction("socket", LR_PASS); 37 38 }else{ 39 40 lr_end_transaction("socket", LR_FAIL); 41 42 } 43 44 //关闭连接 45 lrs_close_socket("socket0"); 46 return 0; 47 }
//============================================
data.ws的数据为: