laraval6.0 GatewayWorker 交互通信

news/2024/2/21 3:59:37

laravel 6.0 GatewayWorker 通讯

  • 开发前准备
    • 下载 GatewayWorker 及操作方式
    • 前端demo
    • 测试效果
    • 项目中安装GatewayClient

开发前准备

GatewayClient 官网:https://www.workerman.net/
当前使用的是宝塔操作

下载 GatewayWorker 及操作方式

在这里插入图片描述

前端demo

在这里插入图片描述

测试效果

在这里插入图片描述

项目中安装GatewayClient

在这里插入图片描述

composer require workerman/gatewayclient

在这里插入图片描述
绑定用户 和 消息推送

<?phpnamespace App\Http\Controllers\Common;use App\Exceptions\Exception\ErrorException;
use GatewayClient\Gateway;require_once '../vendor/workerman/gatewayclient/Gateway.php';class Push
{public function __construct(){//注意:127.0.0.1:1238 的1238端口不是随意填写的 是在GatewayWorker/yourApp/start_gateway.php 里面//$gateway->registerAddress = '127.0.0.1:1238'; 配置的Gateway::$registerAddress = '127.0.0.1:1238';}/*** Notes:  绑定用户* Author: Seven* Method: getUserBinding* Date: 2023/11/29: 17:27* @param $client_id* @param $users_id*/public function getUserBinding($param){if(empty($param['client_id'])) throw new ErrorException('缺少 client_id');if(empty($param['users_id'])) throw new ErrorException('缺少 users_id');Gateway::bindUid($param['client_id'],$param['users_id']);dd($param['client_id']);}/*** Notes:  推送信息* Author: Seven* Method: getSendPush* Date: 2023/11/29: 17:42* @param $users_id* @param $content*/public function getSendPush($users_id,$type,$content){$data = ['type'=>$type,'msg'=>$content,];Gateway::sendToUid($users_id,json_encode($data));}}

查看结果
调用推送的接口
在这里插入图片描述
到这里说明已经交互成功


https://www.xjx100.cn/news/3119060.html

相关文章

【ZEDSLAM】Ubuntu18.04系统ZED 2i双目相机SDK安装、联合标定、SLAM测试

0.设备、环境和说明 笔记本电脑i5-8300H、GTX 1060、32GRAM 因为后面要测试Vins-Fusion和ORB-SLAM3&#xff0c;所以推荐安装Ubuntu 18.04&#xff08;或者Ubuntu 20.04&#xff09; ROS 1&#xff08;不建议用比Ubuntu18更低的版本&#xff09; ROS一键安装命令&#xff1a;…

JSON.stringify方法详解 后端接受JSON数据格式

1、方法定义&#xff1a;JSON.stringify(value, replacer, space) 参数说明&#xff1a; value&#xff1a;js对象 replacer&#xff1a;替换对象&#xff0c;可以是一个方法、对象或数组&#xff0c;将value按照替换规则展示。 space&#xff1a;填充参数&#xff0c;可以是数…

OD机考真题搜集:矩阵中非1的元素个数

题目 存在一个m*n的二维数组,其成员取值范围为0,1,2。其中值为1的元素具备同化特性,每经过1S,将上下左右值为0的元素同化为1。而值为2的元素,免疫同化。将数组所有成员随机初始化为0或2,再将矩阵的[0,0]元素修改成1,在经过足够长的时间后求矩阵中有多少个元素是0或2(即…

科普 | 隧道代理IP,简化操作提升安全性

随着数字化时代的深入发展&#xff0c;企业对网络数据的依赖日益增强。在这样的背景下&#xff0c;隧道代理IP正在以其独特的优势改变传统的网络代理模式&#xff0c;为企业级数据采集领域带来革命性的变革。 隧道代理IP技术简介 隧道代理IP通过云端服务器实现自动化的HTTP代理…

element-plus 使用密码输入框的自定义图标

<el-inputv-model"ruleFormPassword.newPassword"placeholder"请输入新密码":type"showPassword ? text : password":style"{ width: 360px }"><template #suffix><span class"input_icon" click"swit…

ios(swiftui) 属性包装器详解

目录 1. State 2. Binding 3. ObservedObject 和Published 4. StateObject 5. EnvironmentObject和Environment 6. AppStorage 在 SwiftUI 中&#xff0c;属性包装器用于增强和管理视图的状态&#xff0c;以及处理视图与数据模型之间的绑定和交互。下面是一些常见…

python通过ssh密钥等形式链接到redis服务器

当使用 RSA 私钥进行 SSH 认证时&#xff0c;你可以通过 paramiko 的 RSAKey 来加载私钥&#xff0c;并用其创建 SSH 隧道。以下是修改后的代码示例&#xff0c;使用 RSA 私钥进行 SSH 连接&#xff1a; 示例代码 import paramiko from paramiko import RSAKey from sshtunne…

Fortinet 发布《2024 年网络威胁趋势预测报告》 攻击精准性、复杂性将显著提升

近日&#xff0c;全球网络安全领导者Fortinet&#xff08;Nasdaq&#xff1a;FTNT&#xff09;发布《2024 年网络威胁趋势预测报告》。该报告由Fortinet全球威胁情报和研究团队&#xff08;FortiGuard Labs&#xff09;制作&#xff0c;深入探讨了高级持续性网络犯罪的新时代&a…