当我没有在bootstrap.js
中指定Laravel Echo时,应用程序正常工作。Laravel Echo导致邮局路由失败
composer.json
"require": {
"laravel/framework": "5.4.*",
"pusher/pusher-php-server": "~2.6",
},
的package.json
"dependencies": {
"laravel-echo": "^1.3.2",
"pusher-js": "^4.1.0",
}
bootstrap.js
import Echo from 'laravel-echo';
window.Pusher = require('pusher-js');
window.Echo = new Echo({
broadcaster: 'pusher',
key: 'app-key',
cluster: 'eu',
encrypted: true
});
broadcasting.php
'pusher' => [
'driver' => 'pusher',
'key' => env('PUSHER_APP_KEY'),
'secret' => env('PUSHER_APP_SECRET'),
'app_id' => env('PUSHER_APP_ID'),
'options' => [
'cluster' => 'eu',
'encrypted' => true
],
],
我在我的本地主机上,并试图遵循多个教程和许多变化,但没有一个解决了这个问题。该应用程序正确加载所有获得的API路线,但是当我尝试登录时,我得到一个500错误。
我也使用Vue & VueRouter万一有什么影响。
编辑
看来,事情是干扰与CsrfToken与爱可信发送。如果我重新安排我的bootstrap.js文件,以便回声导入前爱可信:
import Echo from 'laravel-echo';
etc.
window.axios = require('axios');
路线很好地工作,但我可以不听任何事件,当我通过爱可信布线后提交它们(如果我提交帖子一个Artisan控制台命令的事件工作正常,我可以听到响应并将其输出到控制台)。
如果我在dd('test')
的事件构造函数中,帖子路径输出test
。 如果我在broadcastOn方法中使用dd('test')
,则发布路由不会触发此功能。
试试这个:取消'应用程序\供应商\ BroadcastServiceProvider ::类,'线'config> app.php'文件,并在.env文件中指定PUSHER_APP_ID,PUSHER_APP_KEY和PUSHER_APP_SECRET? –
我已经取消了评论,并且我的'.env'文件设置正确,因为使用控制台命令可以正常工作。 – Imagine17
下一步是在Pusher中查看您的集群信息。就我而言,它是'mt1'而不是'eu'。您可以在推送器仪表板中找到群集信息。 –