简要咨询咨询QQ网站导航网站搜索手机站点联系我们设为首页加入收藏 

PHP请求Socket接口测试实例

来源:易贤网   阅读:1308 次  日期:2016-08-29 14:49:53

温馨提示:易贤网小编为您整理了“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接口测试实例就是小编分享给大家的全部内容了,希望能给大家一个参考

更多信息请查看网络编程
点此处就本文及相关问题在本站进行非正式的简要咨询(便捷快速)】     【点此处查询各地各类考试咨询QQ号码及交流群
上一篇:PHPWind9.0手动屏蔽验证码解决后台关闭验证码但是依然显示的问题
下一篇:php+jquery+html实现点击不刷新加载更多的实例代码
易贤网手机网站地址:PHP请求Socket接口测试实例
由于各方面情况的不断调整与变化,易贤网提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!