我目前正在构建一个基于firebase的Web应用程序,并希望用户能够创建和加入游戏室。目前我正在试图找出如何创建其他人可以加入的房间的问题。我想知道是否有人可以帮助我开始这个问题。只是每个用户,如果重要的话,每个创建和加入会议室的用户都将拥有自己的帐户和唯一ID
答案 0 :(得分:1)
Firebase没有任何房间概念。有一些父节点和子节点通过键:值对进行代码处理,非常类似于字典。
Firebase中也没有用户,除了用户ID(uid)以及在Firebase中创建新用户并在服务器内部存储时创建的关联数据。该数据用于身份验证。如果需要存储关于用户的其他数据,也许是一个名称,它是在数据库本身内完成的。
保持简单,假设我们想要存储有关用户和房间的信息。
users
uid_0
name: "Bill"
uid_1
name: "Ted"
uid_27
name: "The Doctor"
uid是新用户在Firebase中创建帐户时创建的。您的应用将收集Firebase提供的uid,并将其和任何其他用户数据写入用户节点;在这种情况下,用户名。
然后是房间
rooms
room_0
room_name: "Phone Booth"
description: "Time travelling in style; Excellent!"
uid_0: true
uid_1: true
room_1
room_name: "Tardis"
description: "It's bigger on the inside"
uid_27: true
在这种情况下,room_0,电话亭,其中包含Bill和Ted,room_1中有The Doctor。
这不是构建数据的唯一方法,您的结构可能会因此而有所不同,但它是一个可以开始的地方。
注意:几乎总是应该使用push()创建键名。我使用room_0等作为占位符。最佳做法是取消主要父键名与其包含的数据的关联。即,不要用电子邮件地址硬编码密钥名称 - 这是个坏消息。