pollsockets / pollsockets-laravel
为 Laravel 定制的 pollsockets 服务器端实现
1.0.0
2023-03-31 20:09 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^9.0|^10.0
- spatie/laravel-package-tools: ^1.13.0
Requires (Dev)
- laravel/pint: ^1.7
- nunomaduro/collision: ^6.4
- nunomaduro/larastan: ^2.5.1
- orchestra/testbench: ^7.23
- pestphp/pest: ^1.22.6
- pestphp/pest-plugin-laravel: ^1.4
- phpstan/extension-installer: ^1.2
- phpstan/phpstan-deprecation-rules: ^1.1.3
- phpstan/phpstan-phpunit: ^1.3.11
- phpunit/phpunit: ^9.6.6
- rregeer/phpunit-coverage-check: ^0.3.1
- spatie/laravel-ray: ^1.32.4
This package is auto-updated.
Last update: 2024-09-09 03:30:43 UTC
README
为什么选择 pollsockets?
Pollsockets 是一个简单而强大的服务器-客户端通信库。它适用于需要从服务器向客户端发送数据的情况。由于它易于实现和使用,它是一个很好的 WebSockets 替代品。
它是如何工作的?
Pollsockets 使用简单的轮询机制从服务器向客户端发送事件。它不是轮询返回数据的端点,而是轮询返回发生事件列表的端点,从而节省带宽和响应时间。客户端随后处理这些事件并相应地更新 UI。
生态系统
服务器端
客户端
要求
- PHP 8.1 或更高版本
- Laravel 9.0 或更高版本
- Redis 6.0 或更高版本
安装
您可以通过 composer 安装此包
composer require pollsockets/pollsockets-laravel
您可以使用以下命令发布配置文件
php artisan vendor:publish --tag="pollsockets-config"
这是发布配置文件的内容
use Pollsockets\Drivers\RedisChannel; return [ 'driver' => RedisChannel::class, ];
使用方法
use Pollsockets\Pollsockets; // Channel name can be any string. Can be used to separate events from different sources. $channelName = 'channel'; // Event name can be any string. Can be used to separate events of the same type. $event = 'reload'; // Publish an event to the channel from anywhere in your code. Perfect for informing client about changes in the database. Pollsockets::channel($channelName)->publish($event);
测试
composer test
变更日志
请参阅 变更日志 了解最近更改的详细信息。
安全漏洞
请查阅 我们的安全策略 了解如何报告安全漏洞。
致谢
许可协议
MIT 许可协议 (MIT)。请参阅 许可文件 了解更多信息。