我还读了一些类似的问题,但是找不到令人满意的答案,所以到目前为止再次询问我在代码中所做的事情。
资源/资产/ 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,因为如果我使用公共频道,我的应用程序运行正常,但我很难使用私人频道,我不知道我还能读什么,因为我读过通过文档几次,我找不到任何我想念的东西。请帮帮我! :)
答案 0 :(得分:2)
您必须发送csrf_token 您可以通过meta标签或Echo json参数发送 auth:{ 标题:{ ' X-CSRF-Token':' some_csrf_token' } }