网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 PHP请求Socket接口测试实例
内容
    使用php读取socket接口的数据,通过php传递请求方法和请求参数,得到返回结果
    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();
    Java的Socket服务端:
    import java.io.InputStream;
    import java.io.PrintWriter;
    import java.net.ServerSocket;
    import java.net.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, 0, 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="请求方法:"+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分召开电话会议,通报公司的财务和经营状况。";
      }
    }
    以上这篇PHP请求Socket接口测试实例就是小编分享给大家的全部内容了,希望能给大家一个参考
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/17 16:45:27