swoole的websockte例子

服务器的环境,建议用bt.cn的一键环境javascript

服务端:php

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2019\5\23 0023
 * Time: 15:12
 */

class Server{

    public function __construct()
    {
        $sw = new swoole_websocket_server('0.0.0.0',9501);

        $sw->on('open',function($server, $request){

            echo '客户端已经链接'.PHP_EOL;
        });

        $sw->on('message',function(swoole_websocket_server $server, $frame){

            echo PHP_EOL. '服务端已经收到消息';
            echo PHP_EOL. "客户端id: " .$frame->fd ; //客户端id
            echo PHP_EOL. "接收的消息: " .$frame->data ; //接收的数据
            $server->push($frame->fd,"服务把你的信息原封不动的给你了-->".$frame->data);

        });

        $sw->on('close',function($ser, $fd){

            echo '链接已经关闭';
        });

        $sw->start();

    }

}

new Server();

 

客户端:css

<html>
<head>
    <title>demo</title>
    <script src="https://cdn.bootcss.com/jquery/1.9.1/jquery.min.js"></script>
</head>
<body>
<input type="text" id="content">
<input type="button" value="send" id="send">
<script type="text/javascript">
  var ws = new WebSocket("ws://192.168.56.101:9501");
  ws.onopen = function(){
    console.log("握手成功");
  }
  ws.onmessage = function(e){
    console.log("message:" + e.data);
  }
  ws.onerror = function(){
    console.log("error");
  }
  $("#send").click(function(){
    content = $("#content").val();
    console.log(content);
    ws.send(content);
  })
</script>
</body>
</html>

 

结果:html

相关文章
相关标签/搜索