0

我读了一些与此类似的其他问题,但未能找到令人满意的答案,所以再次询问我到目前为止在代码中所做的事情。

在资源/资产/bootstrap.js 我有

window.Echo = new Echo({
    broadcaster: 'pusher',
    key: '8c5cc1d9fe77464ac2df',
    cluster: 'us2',
    encrypted: true,
    authEndpoint: '/chat4/public/authenticate-broadcasting',
});

在我的 routes/web.php 中我有:

Route::post('/authenticate-broadcasting', function () {
  return true;
});

但是当我加载应用程序页面时,在控制台中我得到:

POST http://laraveldemo-one.com/chat4/public/authenticate-broadcasting 500 (Internal Server Error)

Pusher : Couldn't get auth info from your webapp : 500

我正确安装了 Laravel Echo 和 Pusher,因为如果我使用公共频道,我的应用程序可以完美运行,但是我在使用私人频道时失败了,我不确定我还能尝试什么,因为我已经阅读了几次文档并且找不到任何我想念的东西。请帮帮我!:)

4

1 回答 1

2

您必须发送 csrf_token 您可以通过元标记或使用 auth 在 Echo json 参数中发送:{ headers: { 'X-CSRF-Token': 'some_csrf_token' } }

https://pusher.com/docs/client_api_guide/client_connect

于 2017-06-24T08:07:52.743 回答