GatewayWorker教程2

本文介绍了如何在GatewayWorker环境中处理客户端请求,特别是通过Event.php的onMessage函数解析json数据并进行交互。通过示例展示了当接收到客户端发送的{'type': 'aaa'}时,服务端返回'hello aaa'的逻辑。同时,提供了启动服务和使用telnet模拟客户端测试的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前面已经说过如何搭建GatewayWorker环境。

关于如何搭建GatewayWorker环境可以参考本:

http://blog.youkuaiyun.com/incloud_anke/article/details/50619441

下面说一些逻辑文件Event.php

1. onMessage函数处理有客户端请求时的处理函数

这里主要处理客户端传递过来的json数据,并与其交互。

   /**
    * 有消息时
    * @param int $client_id
    * @param string $message
    */
   public static function onMessage($client_id, $message)
   {
        // 客户端传递的是json数据
        $message_data = json_decode($message, true);
        if(!$message_data)
        {
            return ;
        }
        $db1 = Db::instance('db1');
        // 根据类型执行不同的业务
        switch($message_data['type'])
        {

case 'aaa':

Gateway::sendToCurrentClient("hello aaa");
return;

          }

     }

说明:这里是接收客户端发送{"type":"aaa"} 服务端返回hello aaa

编写好上面代码:下面我们就测试下:

1.首先要启动根目录下的 start.php   

启动方式 :php start.php start -d 在后台启动

2.telnet方式模拟客户端:

telnet ip地址 56250  (端口号已经配置好)

出现如下:


表示已经模拟登录成功:等待输入:

3.输入{"type":"aaa"}json数据 服务端会返回hello aaa

如:


这样就这命消息ok! 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值