Pusher:错误:订阅身份验证数据中的密钥无效:

时间:2018-12-03 20:23:33

标签: laravel pusher

我想创建一个协作文本编辑器应用程序,并且遇到了this教程。我访问了github上的repository,并按照README文件中的所有步骤进行了安装和使用。另外,在本教程中,在Pusher上创建应用程序后,我选中了“应用程序设置”选项卡上的“启用客户端事件”选项。

但是,当我在注释文本字段中键入任何内容时,浏览器的控制台上会出现以下两个错误:

1)

    Pusher : Error : {"type":"WebSocketError","error":"type":"PusherError","data":
{"code":null,"message":"Invalid key in subscription auth data: 
'xxxxxxxxxxxx'"}}}

2)

 Pusher : Error : {"type":"WebSocketError","error":
{"type":"PusherError","data":{"code":null,"message":"Cannot broadcast 
client event (connection not subscribed to channel presence-note.note-
test-for-pusherqjvQbgt4s9)"}}}

第二个错误发生在我键入内容时,第一个错误发生在加载页面时。我认为第二个事件是因为第一个事件而发生的。

这是我的broadcast.php文件:

'connections' => [

        'pusher' => [
            'driver' => 'pusher',
            'key' => env('PUSHER_APP_KEY'),
            'secret' => env('PUSHER_APP_SECRET'),
            'app_id' => env('PUSHER_APP_ID'),
            'options' => [
                //
                'cluster' => 'us2',
                'encrypted' => true
            ],
        ],

        'redis' => [
            'driver' => 'redis',
            'connection' => 'default',
        ],

        'log' => [
            'driver' => 'log',
        ],

        'null' => [
            'driver' => 'null',
        ],

    ],

我从Pusher帐户上的应用程序密钥获取的env文件中设置的值。我已经仔细检查了值的设置是否正确,这似乎很好。

感谢您的帮助。预先感谢

2 个答案:

答案 0 :(得分:1)

第一个客户端错误表明您的auth端点未向客户端发送有效的响应,而Pusher无法对其进行验证。您是否在服务器中指定了完全与客户端中相同的凭据?尤其是集群的规范。

您收到的第二个客户端错误提示您的客户端实际上尚未订阅该频道,这意味着客户端事件将无法正常工作。

仔细检查您的客户端代码,以确保它实际上正在订阅有问题的频道。另外,请仔细检查Pusher仪表板中的应用程序设置,以确保启用了客户端事件。

启用对客户端Pusher对象的日志记录可能会有所帮助。参见https://github.com/pusher/pusher-js#global-configuration

答案 1 :(得分:0)

以下步骤对我有用

  1. 在服务器端和客户端检查您的应用密钥
  2. 运行php artisan config:cache
  3. 运行``php artisan optimize:clear`
  4. 运行composer dump-autoload
  5. 重新启动您的 IDE
  6. 测试您的应用