bizley/mercure-behavior

Yii 2 Mercure 行为。

资助包维护!
bizley

安装: 143

依赖: 0

建议者: 0

安全: 0

星标: 4

关注者: 2

分支: 0

开放问题: 1

类型:yii2-extension

1.0.1 2019-09-24 19:11 UTC

This package is auto-updated.

Last update: 2024-09-02 05:03:18 UTC


README

Latest Stable Version Total Downloads License

Yii 2 Mercure 行为

此包提供 Yii 2 行为,用于在资源被修改时自动将更新发布到 Mercure 中心。
此行为的目的是为 Yii 应用程序配备与 API Platform 提供的相同的 Mercure 功能。

什么是 Mercure?

引用 dunglas/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 包发布更新。
请根据存储库链接了解如何正确配置它。