PHP请求Socket接口测试实例


Posted in PHP onAugust 12, 2016

使用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接口测试实例

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

PHP 相关文章推荐
第4章 数据处理-php正则表达式-郑阿奇(续)
Jul 04 PHP
PHP无刷新上传文件实现代码
Sep 19 PHP
PHP中的错误处理、异常处理机制分析
May 07 PHP
CodeIgniter上传图片成功的全部过程分享
Aug 12 PHP
PHP中使用glob函数实现一句话删除某个目录下的所有文件
Jul 22 PHP
优化WordPress的Google字体以加速国内服务器上的运行
Nov 24 PHP
php根据用户名和手机号查询是否存在手机号码
Feb 16 PHP
PHP基于socket实现客户端和服务端通讯功能
Jul 13 PHP
php函数式编程简单示例
Aug 08 PHP
基于PHP的微信公众号的开发流程详解
Aug 07 PHP
Laravel Reponse响应客户端示例详解
Sep 03 PHP
php 原生分页
Apr 01 PHP
php+jquery+html实现点击不刷新加载更多的实例代码
Aug 12 #PHP
php网页版聊天软件实现代码
Aug 12 #PHP
PHP 自动加载的简单实现(推荐)
Aug 12 #PHP
py文件转exe时包含paramiko模块出错解决方法
Aug 12 #PHP
PHP url的pathinfo模式加载不同控制器的简单实现
Aug 12 #PHP
PHP命令行执行整合pathinfo模拟定时任务实例
Aug 12 #PHP
谈谈PHP连接Access数据库的注意事项
Aug 12 #PHP
You might like
set_include_path在win和linux下的区别
2008/01/10 PHP
10个实用的PHP正则表达式汇总
2014/10/23 PHP
PHP框架Laravel的小技巧两则
2015/02/10 PHP
Yii核心验证器api详解
2016/11/23 PHP
PHP进制转换实例分析(2,8,16,36,64进制至10进制相互转换)
2017/02/04 PHP
escape、encodeURI 和 encodeURIComponent 的区别
2009/03/02 Javascript
js parseInt(&quot;08&quot;)未指定进位制问题
2010/06/19 Javascript
jquery分页插件jpaginate在IE中不兼容问题
2014/04/22 Javascript
10分钟学会写Jquery插件实例教程
2014/09/06 Javascript
用javascript关闭本窗口不弹出询问框的方法
2014/09/12 Javascript
Nodejs实现的一个简单udp广播服务器、客户端
2014/09/25 NodeJs
AngularJS动态加载模块和依赖的方法分析
2016/11/08 Javascript
js实现数组内数据的上移和下移的实例
2017/11/14 Javascript
JavaScript 点击触发复制功能实例详解
2018/11/02 Javascript
在element-ui的select下拉框加上滚动加载
2019/04/18 Javascript
vue $mount 和 el的区别说明
2020/09/11 Javascript
python网络编程之UDP通信实例(含服务器端、客户端、UDP广播例子)
2014/04/25 Python
python、java等哪一门编程语言适合人工智能?
2017/11/13 Python
今天 平安夜 Python 送你一顶圣诞帽 @微信官方
2017/12/25 Python
攻击者是如何将PHP Phar包伪装成图像以绕过文件类型检测的(推荐)
2018/10/11 Python
python五子棋游戏的设计与实现
2019/06/18 Python
python爬虫之自制英汉字典
2019/06/24 Python
python 协程中的迭代器,生成器原理及应用实例详解
2019/10/28 Python
Python语言异常处理测试过程解析
2020/01/08 Python
Flask中sqlalchemy模块的实例用法
2020/08/02 Python
Python模块常用四种安装方式
2020/10/20 Python
简单的HTML5初步入门教程
2015/09/29 HTML / CSS
白宫黑市官网:White House Black Market
2016/11/17 全球购物
英国领先的餐饮折扣俱乐部:Gourmet Society
2020/07/26 全球购物
求职简历中的自我评价分享
2013/12/08 职场文书
幼儿教师工作感言
2014/02/14 职场文书
法英专业大学生职业生涯规划书范文
2014/09/22 职场文书
预备党员2014年第四季度思想汇报范文
2014/10/25 职场文书
群众路线教育实践活动整改落实情况汇报
2014/10/28 职场文书
学期个人自我总结
2015/02/13 职场文书
2016入党积极分子考察评语
2015/12/01 职场文书