【问题标题】:Laravel event not being broadcasted web laravel-websockets serverLaravel 事件未广播 web laravel-websockets 服务器
【发布时间】:2022-10-24 06:22:10
【问题描述】:

我正在开发一个实时聊天应用程序,但在使用 laravel-websockets 包处理广播事件时遇到了一些问题。昨天一切正常,我正在从私人和公共渠道接收消息,但我不知道为什么我不再收到消息了。

我已经正确配置了我的环境变量,并使用pusher 驱动程序进行广播,使用redis 连接进行队列处理。我还正确配置了我的 WebSockets 服务器,我对此很确定,因为当我错误配置我的 WebSockets 服务器时,Laravel 抛出了 curl 异常。我正在将事件广播到私人频道并实现ShouldBroadcastNow 接口以使用sync 连接广播消息而无需排队,我也成功通过了私人频道的身份验证。我什至尝试使用ShouldBroadcast 接口对广播进行排队并运行artisan queue:work 命令,队列显示作业已处理。

使用上述所有设置,我尝试在私人和公共频道上广播事件,但 WebSocket 服务器没有发送事件,并且 WebSocket 服务器中没有关于使用sync 连接发送的事件的日志以及那些由队列处理的。 WebSocket 服务器日志显示新的套接字连接和通道授权成功日志,但没有任何事件广播的迹象(即使对于公共通道)。

我对此感到非常困惑,因为昨天它工作正常,今天当我重新启动我的电脑时它不再工作了。请帮助我,任何帮助将不胜感激!

【问题讨论】:

    标签: php laravel websocket


    【解决方案1】:

    我更新了我的作曲家并且有同样的问题。 回滚到我以前的版本,它又开始工作了。

    问题似乎出在"pusher/pusher-php-server": "7.2.0" 上。
    将版本设置为"pusher/pusher-php-server": "7.0.2" 在 composer.json 文件中解决了这个问题。

    "pusher/pusher-php-server": "^7.0" 更改为"pusher/pusher-php-server": "7.0.2"

    【讨论】:

    猜你喜欢
    • 2017-05-04
    • 1970-01-01
    • 1970-01-01
    • 2016-06-12
    • 2018-02-27
    • 2021-06-02
    • 2018-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多