Firebase 聊天应用程序似乎建议所有客户端都将接收发送到给定 FireBase url 的消息。
现在,确保用户只接收发送到特定通道的消息的一种方法是在客户端过滤消息,但这意味着所有消息都将传播到所有客户端,并且客户端将进行过滤。
有没有办法在 Firebase 服务器上建立通道 - 或者这是否意味着需要为单独的通道创建单独的 firebase,这意味着如果想要用户特定的推送消息,可能需要创建一个通道/firebase对于每个用户。
那么,建议的解决方案是什么?
Firebase 聊天应用程序似乎建议所有客户端都将接收发送到给定 FireBase url 的消息。
现在,确保用户只接收发送到特定通道的消息的一种方法是在客户端过滤消息,但这意味着所有消息都将传播到所有客户端,并且客户端将进行过滤。
有没有办法在 Firebase 服务器上建立通道 - 或者这是否意味着需要为单独的通道创建单独的 firebase,这意味着如果想要用户特定的推送消息,可能需要创建一个通道/firebase对于每个用户。
那么,建议的解决方案是什么?
实际上,Firebase 数据结构使这变得非常简单!演示应用程序将聊天消息放在 Firebase 的根目录中(即https://samplechat.firebaseio.com/),但您也可以轻松地在 Firebase 中使用单独的位置进行单独的聊天,例如 /chat1、/chat2、等等。或者更好的是,你可以有一个 /chats/ 位置,下面有任意数量的聊天,每个聊天都是唯一的(可能使用push())。
然后,用户可以通过直接引用特定聊天来接收消息并将其推送到特定聊天(例如https://samplechat.firebaseio.com/chats/chat-id/),然后他们将不会获得任何其他聊天的任何数据。