Laravel: 如何用Broadcast指定返回数据?
Laravel: How to specify returned data with a Broadcast?
我正在使用 Presence Channel,根据 docs,您可以 return 您需要的特定数据数组。例如在这种情况下,它是变量 $user
.
中的 id
和 name
Broadcast::channel('chat', function ($user) {
return ['id' => $user->id, 'name' => $user->name];
});
在我的 JS 文件中我有
Echo.join(`chat`)
.here((users) => {
console.log('users here: ',users);
})
console.log()
return 是 所有 用户数据(如电子邮件地址)的数组,而不仅仅是 id
和 [=我在 Broadcast
中指定的 14=]。
如何让它只包含 id
和 name
?
首先,Broadcast::channel
需要一个authentication callback
来验证用户是否被允许收听这个频道。这是不是数据负载,这个数组用于验证!
要指定数据负载,请使用 broadcastWith
docs
中指定的
我重新启动了浏览器,它开始正常工作了……奇怪。似乎有某种类型的缓存正在发生,它不在 内 浏览器内,但可能在 Pusher 端。我不确定。
我正在使用 Presence Channel,根据 docs,您可以 return 您需要的特定数据数组。例如在这种情况下,它是变量 $user
.
id
和 name
Broadcast::channel('chat', function ($user) {
return ['id' => $user->id, 'name' => $user->name];
});
在我的 JS 文件中我有
Echo.join(`chat`)
.here((users) => {
console.log('users here: ',users);
})
console.log()
return 是 所有 用户数据(如电子邮件地址)的数组,而不仅仅是 id
和 [=我在 Broadcast
中指定的 14=]。
如何让它只包含 id
和 name
?
首先,Broadcast::channel
需要一个authentication callback
来验证用户是否被允许收听这个频道。这是不是数据负载,这个数组用于验证!
要指定数据负载,请使用 broadcastWith
docs
我重新启动了浏览器,它开始正常工作了……奇怪。似乎有某种类型的缓存正在发生,它不在 内 浏览器内,但可能在 Pusher 端。我不确定。