使用webSocket 与现有mvc框架(ThinkPHP Yii laravel等)整合, 现有mvc框架项目与Swoole 独立部署互不干扰。
具体实现步骤
1、网站页面建立与webSocket连接,
2、页面发起连接时,将对应连接的client_id发给网站页面
3、网站页面收到client_id后触发一个ajax请求将client_id发到mvc后端
4、mvc后端收到client_id后将client_id与当前uid(用户id或者客户端唯一标识)绑定,保存到redis或数据库。
如果想通过接收 HTTP 触发 WebSocket 的推送,创建webSocket服务器时可以设置onRequest 回调。
mvc后端可以通过http请求将uid发送到webSocket服务器,webSocket 获取uid,从redis或数据库中取出对应页面连接的client_id, 调用push 方法通知连接页面。