【问题标题】:laravel broadcasting Broadcasting in private chanel not working i use laravel echolaravel 广播在私人频道中广播不起作用我使用 laravel echo
【发布时间】:2021-06-01 11:59:14
【问题描述】:

事件是:

public $chat ;
public function __construct($chat)
{
        $this->chat = $chat;
}
 public function broadcastOn()
{
    //        return new Channel('recieve-chat');
    return new PrivateChannel('recieve-chat' );
}

routes/channels.php 是:

Broadcast::channel('recieve-chat', function ($user ) {
        return true;
//    return $user->id === $reciever_id;
});

在刀片文件中:

<script>
    window.addEventListener('DOMContentLoaded' , function () {
         Echo.private('recieve-chat')
                .listen('ChatBroad', (e) => {
                    window.livewire.emit('recieve:' + e.chat.bid_id , e.chat);
                    $(chatScrollDown('.chat'+ e.chat.bid_id ));
                });
        });

</script>

广播频道正常工作。但在 PrivateChannel 中不起作用。并且在控制台中没有显示任何错误

我使用 laravel echo 和 pusher

【问题讨论】:

  • 您的控制台是否出现 403 错误?
  • 控制台没有任何错误
  • @code-for-money 我意识到;aravel echo 无法自动订阅私人频道。
  • 你的问题解决了吗?
  • 嘿,不,我解决不了。我在github.com/laravel/echo/issues/302 中解释了所有问题。我将感谢您的帮助@Doggo

标签: laravel laravel-8 pusher laravel-echo laravel-broadcast


【解决方案1】:

在 App\Providers\BroadcastServiceProvider.php 中

public function boot()
{
    Broadcast::routes();

    require base_path('routes/channels.php');
}

必须喜欢代码。在 Broadcast::routes() 我们不需要任何中间件。

【讨论】:

    猜你喜欢
    • 2021-11-15
    • 2021-07-15
    • 2020-03-24
    • 2018-03-03
    • 2018-02-23
    • 1970-01-01
    • 2023-03-17
    • 2017-02-24
    • 2021-11-08
    相关资源
    最近更新 更多