bizley / mercure-behavior
Yii 2 Mercure 行为。
Requires
- php: >=7.2.0
- bizley/yii2-mercure: ^1.0
- yiisoft/yii2: >=2.0.13 <2.1.0
Requires (Dev)
- phpunit/phpunit: ^7.3
- roave/security-advisories: dev-master
This package is auto-updated.
Last update: 2024-09-02 05:03:18 UTC
README
Yii 2 Mercure 行为
此包提供 Yii 2 行为,用于在资源被修改时自动将更新发布到 Mercure 中心。
此行为的目的是为 Yii 应用程序配备与 API Platform 提供的相同的 Mercure 功能。
什么是 Mercure?
Mercure 是一种协议,允许以方便、快速、可靠和省电的方式将数据更新推送到网络浏览器和其他 HTTP 客户端。它特别适用于发布通过 Web API 提供的资源实时更新,用于响应式 Web 和移动应用程序。
请参阅相关存储库以了解更多关于 Mercure 的信息。还有如何设置服务器和客户端以使用 Mercure 协议建立连接的说明。
安装
将包添加到您的 composer.json
{
"require": {
"bizley/mercure-behavior": "^1.0"
}
}
并运行 composer update
或运行 composer require bizley/mercure-behavior:^1.0
作为替代。
当然,您还需要 Mercure Hub。有关获取 Mercure Hub 的说明,请参阅 dunglas/mercure(我建议使用 Docker 镜像)。
用法
将此 行为 添加到您希望受 Mercure 更新约束的资源对象(通常是 Active Record 实例)。
use \bizley\yii2\behaviors\mercure\MercureBehavior; public function behaviors() { return [ MercureBehavior::class, ]; }
资源对象必须实现 \bizley\yii2\behaviors\mercure\MercureableInterface
。
默认情况下,MercureBehavior 将在资源成功创建、更新或删除后,使用名为 'publisher' 的 Mercure 发布器组件,将更新以 JSON 格式发送到 Mercure 中心。
您可以根据需要自定义配置,例如
public function behaviors() { return [ [ 'class' => MercureBehavior::class, 'publisher' => \bizley\yii2\mercure\Publisher::class, 'format' => \yii\web\Response::FORMAT_XML ] ]; }
发布更新
该行为使用 yii2-mercure 包发布更新。
请根据存储库链接了解如何正确配置它。