php swoole 服务端消息推送

<?php
namespace app\index\controller;

class Pay {
  
    public function notice(){
        //想在这里通过websocket通知客户端支付成功 但是无法获取到 $server
    }
} 

swoole 只有在 获取到 $server 的时候才可以使用 $server->push();

但是在想在服务端主动给客户端推送消息的时候没办法获取到 $server 这个咋解决呢?

是需要用到 swoole websocket_client 去连接 websocket_server;
利用 clientserver send 数据 之后server再想客户端推送吗?

慕侠2389804
浏览 726回答 3
3回答

qq_遁去的一_1

根据题主的描述,数据流是不是 web->websocket->异步处理程序 ,然后希望通过 Yii(swoole)->websocket->web 这样传递数据? 如果是的话,确实需要通过 socket 连接 websocket server,然后由 websocket server 判断要推送给哪个 web client websocket server存有所有websocket的连接,所以由 websocket server 去判断传数据给哪个用户

波斯汪

对, 就是你自己说的办法, client->server->clients
打开App,查看更多内容
随时随地看视频慕课网APP