无法使用 Laravel Websockets 将事件数据接收到 Websockets 仪表板

问题描述

我想在我的 Laravel 应用程序中触发一些实时事件,为此我尝试了 Laravel Web 套接字。 我创建了一个事件类并试图调用该事件,以便它显示在我的网络套接字仪表板上,但该事件返回 [NULL](我转储了事件的结果只是为了检查目的)

我按照以下步骤操作 -

  1. 我安装了文档中提到的 websockets 和 pusher PHP API。

  2. 我使用 PHP artisan websockets:serve

    启动了我的 websockets 服务器
  3. 我在下面创建了一个 Fresh Laravel 事件

     namespace App\Events;
    
     use Illuminate\broadcasting\Channel;
     use Illuminate\broadcasting\InteractsWithSockets;
     use Illuminate\broadcasting\PresenceChannel;
     use Illuminate\broadcasting\PrivateChannel;
     use Illuminate\Contracts\broadcasting\Shouldbroadcast;
     use Illuminate\Foundation\Events\dispatchable;
     use Illuminate\Queue\SerializesModels;
    
     class RealTimeMessage implements Shouldbroadcast
     {
       use SerializesModels;
    
       public $message;
    
       /**
       * Create a new event instance.
       *
       * @return void
       */
       public function __construct()
       {
         $this->message = "Hello World";
       }
    
       /**
        * Get the channels the event should broadcast on.
        *
        * @return \Illuminate\broadcasting\Channel|array
        */
       public function broadcastOn()
       {
         return new Channel('realtimeMessage');
       }
     }
    
  4. 我创建了我的路线只是为了触发事件。下面是我的路线

    Route::get('/send-event',function () { 事件(新实时消息()); });

  5. 当我通过访问 '/send-event' 的路由调用函数时,我的 websockets 仪表板中没有任何结果。我尝试转储该值,但结果为 NULL,也许这就是我在 websockets 仪表板中也没有触发事件的原因..

在这里做错了什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)