PHP 요청 소켓 인터페이스 테스트 실례

2667 단어 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
{'id':2}\r
"); 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();
자바 의 소켓 서버:

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
")){ String[] params=inputString.split("\r
"); 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 인터페이스 테스트 인 스 턴 스 는 편집장 이 여러분 에 게 공유 한 모든 내용 입 니 다.참고 가 되 고 많은 응원 바 랍 니 다.

좋은 웹페이지 즐겨찾기