我最近深入研究了 Laravel 5.3 的 Laravel-Echo 和 Pusher 组合。我已成功设置公共频道并转到私人频道。Laravel 从 /broadcasting/auth 路由返回 403 时遇到问题,无论我做什么来尝试授权操作(直到并包括使用简单的 return true 语句)。谁能告诉我我做错了什么?
应用程序/提供者/BroadcastServiceProvider.php:
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Broadcast;
class BroadcastServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
Broadcast::routes();
/*
* Authenticate the user's personal channel...
*/
Broadcast::channel('App.User.*', function ($user, $userId) {
return true;
});
}
}
资源/资产/js/booststrap.js:
import Echo from "laravel-echo"
window.Echo = new Echo({
broadcaster: 'pusher',
key: 'My-Key-Here'
});
window.Echo.private('App.User.1')
.notification((notification) => {
console.log(notification.type);
});
我可以在我的 Pusher 调试控制台中看到该事件及其有效负载,一旦它到达 auth 路由,它就会失败。