【问题标题】:Possible to broadcast using ReactPHP?可以使用 ReactPHP 进行广播吗?
【发布时间】:2016-09-08 21:38:19
【问题描述】:

是否可以在没有 Ratchet 的情况下使用 ReactPHP 将数据广播或发送到浏览器并使用 javascript 捕获以相应地处理它?

我在事件循环上有一个periodicTimer,有时它需要向通过套接字连接的用户广播或发射。我看到有一个类套接字,在 React github 项目页面的示例中,它被实例化但没有在 web-flow 中使用,仅在 netcat 上使用。是否可以使其在 socket.IO 或 Ratchet 等浏览器上原生运行?

工厂和连接工作正常,我只是不知道如何绑定套接字以使用事件循环向服务器发送/接收数据。

【问题讨论】:

    标签: websocket callback reactphp


    【解决方案1】:

    广播这不是超特殊的功能。

    首先,您需要将所有用户连接保存在全局范围内。 例如你有一个类TestServer,它可以包含属性connections(类型数组)。在 run 方法中,您编写循环。

    例如这是你的连接事件

    $server->on('connection', function(ConnectionInterface $conn) {
         $this->connections[] = $conn;
    });
    

    并写方法

    public function broadcast($message) {
         foreach($this->connections as $conn) {
              $conn->write($message);
         }
    }
    

    注意! 如果用户断开连接,您必须编写代码来删除断开连接,如果需要,您可以编写有关主题的逻辑。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-05
      • 1970-01-01
      • 2014-02-11
      • 2012-03-30
      • 1970-01-01
      • 1970-01-01
      • 2011-05-16
      • 1970-01-01
      相关资源
      最近更新 更多