php - PHP 作为客户端连接到 NodeJS Web 套接字
问题描述
需要我的 laravel 应用程序连接到基于 nodejs 的套接字服务器。该函数需要传递自定义标头以进行身份验证,并每 1 分钟 ping 一次连接,以防止与套接字服务器断开连接
任何人都可以推荐任何好的库来实现上述功能。在这里,PHP 充当客户端
提前致谢
解决方案
感谢您的建议,我最终使用了棘轮/棘爪客户端,效果很好:
例子:
$headers = ['HEADER' => 'Value'];
$ip = '1.1.1.1';
\Ratchet\Client\connect($ip,[],$headers)->then(function($conn) use ($payload) {
$conn->on('message', function($msg) use ($conn) {
$response = json_decode($msg, TRUE);
var_dump($response);
$conn->close();
});
$conn->send('Hello!');
$conn->on('close', function ($code = null, $reason = null) use ($connector, $loop, $app) {
echo "Connection closed ({$code} - {$reason})\n";
});
}, function ($e) {
echo "Could not connect: {$e->getMessage()}\n";
});
推荐阅读
- java - 为什么以及如何修复线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0 错误?
- mysql - 数据库连接 - 数据库设计 - 父级 - 子级 - 子级的子级
- kubernetes - curl 到“kubernetes 集群节点服务”从主节点间歇性失败
- ionic4 - 如何在离子搜索栏中进行自动选择
- c - 简单 C 程序中的缓冲区溢出
- flutter - 使用 Flutter 构建 appbundle 时的 PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 10: , null)
- docker - 运行 React Dockerfile 给我一个错误
- python - 从 blob MySql 获取点数据类型
- javascript - 如何切换 div 以将其扩展并缩小回原始大小?
- python - 从 RDD 中的元组中解包项目时出现 Spark 错误