阅读(3366)
赞(11)
Laravel 8 授权 Presence 频道
2021-06-30 16:36:25 更新
所有在线频道也是私有频道;因此,用户必须 被授权才能访问。但是,在为 Presence 频道定义授权回调时,如果用户有权加入该频道,则不会返回 true
。 相反,你应该返回有关用户的数据数组。
授权回调返回的数据将可供 JavaScript 应用程序中的 Presence 频道事件侦听器使用。 如果用户未被授权加入 Presence 频道,则应返回 false
或 null
:
Broadcast::channel('chat.{roomId}', function ($user, $roomId) {
if ($user->canJoinRoom($roomId)) {
return ['id' => $user->id, 'name' => $user->name];
}
});