在 Laravel 包中授权频道
Authorize Channel in Laravel Package
我正在开发一个 laravel 包,我需要在其中授权私人频道。
在我的正常 laravel 项目(不是包)中一切正常:
事件发送消息:
public function broadcastOn()
{
return new PrivateChannel('chat');
}
在我的 route/channel.php
中,我做如下:
Broadcast::channel('chat', function ($user) {
return Auth::check();
});
但是我如何在我的 laravel 包中授权我的聊天频道?
在我的 laravel 包中,服务提供商具有启动和注册功能,与 routes/web.php
一样,我知道我们可以注册它,但如何处理频道?我们可以注册吗?我找不到相关文件请帮助。
我正在使用 pusher 服务器和 laravel echo。
希望你能理解我的问题。我只想知道如何在我的包中授权频道。
我自己的问题的答案是我们必须取消注释 config/app.php
中的一行:
App\Providers\BroadcastServiceProvider::class,
我一直在为频道苦苦挣扎,结果是,我们不需要在我们的包中注册频道或广播服务。
它们在默认情况下是全局启用的。
所以一切都保持不变,只是通过取消注释我能够授权私人频道。
希望没有人遇到这样的麻烦。
干杯。
我正在开发一个 laravel 包,我需要在其中授权私人频道。
在我的正常 laravel 项目(不是包)中一切正常:
事件发送消息:
public function broadcastOn()
{
return new PrivateChannel('chat');
}
在我的 route/channel.php
中,我做如下:
Broadcast::channel('chat', function ($user) {
return Auth::check();
});
但是我如何在我的 laravel 包中授权我的聊天频道?
在我的 laravel 包中,服务提供商具有启动和注册功能,与 routes/web.php
一样,我知道我们可以注册它,但如何处理频道?我们可以注册吗?我找不到相关文件请帮助。
我正在使用 pusher 服务器和 laravel echo。
希望你能理解我的问题。我只想知道如何在我的包中授权频道。
我自己的问题的答案是我们必须取消注释 config/app.php
中的一行:
App\Providers\BroadcastServiceProvider::class,
我一直在为频道苦苦挣扎,结果是,我们不需要在我们的包中注册频道或广播服务。
它们在默认情况下是全局启用的。
所以一切都保持不变,只是通过取消注释我能够授权私人频道。
希望没有人遇到这样的麻烦。
干杯。