Laravel 5.4 广播:Pusher->Error->WebSocketError

Laravel 5.4 Broadcast : Pusher->Error->WebSocketError

我刚开始使用带有 Pusher 和 Echo 的广播。我的问题是我遇到了一个错误,而且我找不到解决方法。错误信息看起来很直接,但我不知道我应该去哪里摆脱它。

我的 laravel 是 Laravel 5.3 的升级版。我取消注释 App/Providers/BroadcastServiceProvider::class into config.php。 我创建了一个活动并设置了私人频道。return new PrivateChannel('dealer.'$this->client->dealer_id); 我将新频道添加到 routes/channels.php

Broadcast::channel('dealer.{dealerId}', function ($user, $dealerId) {
    return (int) $user->dealer_id === (int) $dealerId;
});

我将此添加到 bootstrap.js

window.Echo = new Echo({
    broadcaster: 'pusher',
    key: 'my-secrect-key'
});

我还将所有内容都添加到了 .env 文件中。最后,我在 applayout.blade.php

的末尾将频道添加到脚本中
Echo.private(`dealer.1`)
    .listen('NewClient', (e) => {
    console.log(e);
});

当我加载页面时,这是我从控制台得到的错误:

Pusher : Error : {
    "type":"WebSocketError",
    "error":{
        "type":"PusherError",
        "data":{
            "code":null,
            "message":"Auth value for subscription to private-dealer.1 is invalid: should be of format 'key:signature'"
        }
    }
}

我missing/doing哪里错了?

将 Laravel 5.3 升级到 5.4,您应该在 .env 文件中进行更改

更改自:

PUSHER_KEY
PUSHER_SECRET

PUSHER_APP_KEY
PUSHER_APP_SECRET

有人在 Laracast 上回答了。 Link