PHP请求Socket接口测试实例

前端之家收集整理的这篇文章主要介绍了PHP请求Socket接口测试实例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

@H_404_0@使用PHP读取socket接口的数据,通过PHP传递请求方法和请求参数,得到返回结果


@H_404_0@

PHP文件


<div class="jb51code">
<pre class="brush:PHP;">
<?php
class Test{
const IP='127.0.0.1';
const port=10003;
public static function main(){
header("Content-type:text/html;Charset=UTF-8");
$socket=new Test();
$result=$socket->connSocket("getmaillist\r\n{'id':2}\r\n");
echo $result;
}
private function connSocket($str){
$socket = socket_create(AF_INET,SOCK_STREAM,SOL_TCP);
$res=@socket_connect($socket,self::IP,self::port);
if(!$res){
return;
}
socket_write($socket,$str);
$result="";
while($data = socket_read($socket,1024)){
$result.=$data;
}
socket_close($socket);
return $result;
}
}
Test::main();

@H_404_0@Java的Socket服务端:

public class Test {
public static void main(String[] args) throws Exception {
ServerSocket serverSocket = new ServerSocket(10003);

while (true) {
  Socket socket = serverSocket.accept();

  InputStream is = socket.getInputStream();
  byte[] b = new byte[1024];
  int len = is.read(b);
  String inputString = new String(b,len);
  PrintWriter pw=new PrintWriter(socket.getOutputStream(),true);
  String result="";

  //处理发来的数据
  if(inputString.contains("\r\n")){
    String[] params=inputString.split("\r\n");
    if(params[0].equals("getmaillist")){
      String maillist=getmaillist();
      result="请求<a href="/tag/fangfa/" target="_blank" class="keywords">方法</a>:"+params[0]+",请求参数:"+params[1]+",请求结果:"+maillist;
    }else{
      result="非法参数2";
    }
  }else{
    result="非法参数1";
  }

  pw.println(result);
  socket.close();
}

}
public static String getmaillist(){
return "中国上海/2015年7月28日——服务于中国及全球华人社群的领先在线媒体公司新浪公司(Nasdaq GS: SINA)定于美国当地时间2016年8月8日周一股市收盘后公布截至2016年6月30日的2016第二季度未经审计的财务报告。随后,新浪管理团队将于美国东部时间晚10点10分召开电话会议,通报公司的财务和经营状况。";
}
}

@H_404_0@

效果

@H_404_0@以上这篇PHP请求Socket接口测试实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。

猜你在找的PHP相关文章