【问题标题】:How Can I Configure Lumen To Broadcast Events via Pusher?如何配置 Lumen 以通过 Pusher 广播事件?
【发布时间】:2016-03-26 11:31:01
【问题描述】:

Lumen 的文档声明“Lumen 支持多个开箱即用的广播驱动程序:PusherRedis 和一个用于本地开发和调试的 log 驱动程序。每个驱动程序都包含一个配置示例。 BROADCAST_DRIVER 配置选项可用于设置默认驱动程序。”

在我的 .env 文件中,我设置了 BROADCAST_DRIVER=pusher。我可以在哪里/如何配置我的推送者 ID、密钥和密码?我看到在 Laravel 中用于设置这些选项的配置文件位于 config/broadcasting.php 中。 我可以在 Lumen 的哪里设置这些选项?

我暂时编辑了Illuminate\Broadcasting\BroadcastManager 并将我的值硬编码在其中。

protected function createPusherDriver(array $config)
    {
        // override
        $app_id = 'hidden';
        $key = 'hidden';
        $secret = 'hidden';

        return new PusherBroadcaster(
            new Pusher($key, $secret, $app_id, Arr::get($config, 'options', []))
        );
    }

【问题讨论】:

    标签: php laravel lumen pusher laravel-broadcast


    【解决方案1】:

    好的,我想通了。基本上你必须自己添加配置文件。

    1. 在应用的根目录中创建一个config 目录。
    2. config/broadcasting.php 从工作中的 laravel 安装复制到此目录中
    3. 将以下键添加到您的.env 文件中:PUSHER_SECRET, PUSHER_KEY, PUSHER_APP_ID

    【讨论】:

      【解决方案2】:

      总的来说,Lumen 支持两种配置模式:

      • 设置Lumen的internal config files消耗的环境变量
      • 创建覆盖 Lumen 内部配置的项目配置文件

      Lumen 提供了配置大多数框架组件(包括 Pusher)所需的基于环境的配置变量。虽然文档中不清楚,但我们也可以通过 Laravel 等配置文件来配置 Lumen。这启用了 Lumen 通过其内置配置结构可能不支持的高级配置。

      默认情况下,新 Lumen 项目不像新 Laravel 项目在 config/ 目录中那样提供配置文件。正如@Feek 发现的那样,我们可以创建 config/ 目录并添加任何需要的配置文件。例如,我们可以创建 config/broadcasting.php 文件来设置广播连接。

      当像这样在项目中创建配置文件时,如果它与 Lumen 内置配置文件之一的名称匹配,Lumen 将自动从文件中读取配置值。如果我们想添加一个与 Lumen 内部配置文件名不匹配的自定义配置文件,我们需要手动指示 Lumen 在服务提供程序或 bootstrap/app.php 中读取配置文件.

      例如,要从 config/my-custom-config.php 加载配置值,请将此行添加到应用程序的启动过程:

      $app->configure('my-custom-config');
      

      在这个问题的特殊情况下,Lumen 内置的 broadcasting.php 配置文件为我们读取 Pusher 环境变量,因此我们不需要在项目中为这些创建配置文件.只需在 .env 中设置BROADCAST_DRIVERPUSHER_SECRETPUSHER_KEYPUSHER_APP_ID

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-09-14
        • 1970-01-01
        • 1970-01-01
        • 2021-11-19
        • 2016-02-21
        • 2018-09-22
        • 2017-10-03
        相关资源
        最近更新 更多