GatewayWorker与Laravel、ThinkPHP框架的结合
具体实现步骤
1、网站页面建立与GatewayWorker
的websocket
连接
2、GatewayWorker
发现有页面发起连接时,将对应连接的client_id
发给网站页面
3、网站页面收到client_id
后触发一个ajax
请求(假设是bind.php
)将client_id
发到mvc
后端
4、mvc
后端bind.php
收到client_id
后利用GatewayClient
调用Gateway::bindUid($client_id, $uid)
将client_id
与当前uid
(用户id
或者客户端唯一标识)绑定。如果有群组、群发功能,也可以利用Gateway::joinGroup($client_id, $group_id)
将client_id
加入到对应分组
5、页面发起的所有请求都直接post/get
到mvc
框架统一处理,包括发送消息
6、mvc
框架处理业务过程中需要向某个uid
或者某个群组发送数据时,直接调用GatewayClient
的接口Gateway::sendToUid Gateway::sendToGroup
等发送即可
转自:https://workerman.net/doc/gateway-worker/work-with-other-frameworks.html