Firebase的云端function:pipe理员与根查找
掌握Firebase和JavaScript以编码云function; 但我想我正在寻找是否有人可以解释使用以下查找和/或写入云function的优点和缺点?!
- 使用
admin.database().ref()
VS -
root.child()
我自己一直在使用admin.database.ref()
,但我需要? 使用root.child()
而不是同样好?
我看到你也在YouTube上的Firecast的评论中提出了这个问题。 这是个好问题。 如果您一直关注Firebase样本的Cloud Functions,则可能会看到admin.database().ref()
。
admin.database().ref()
使用Firebasepipe理员SDK来访问数据库中的数据。 作为pipe理员参考,它可以无限制地访问数据库的任何部分。
在video中, root = event.data.ref.root
是对发生.onWrite
事件的数据库根目录的引用。 ref与触发事件的用户具有相同的读取和写入权限。 与admin.database().ref()
,它不授予无限制的访问权限。 因此, root.child
访问数据库中的特定path,只要用户有权访问它。
现在, event.data.adminRef.root
是一个数据库引用,可以无限制地访问数据库的任何部分。 如果这听起来像admin.database.ref()
,那是因为它们完全一样。 就我而言,我select了event.data.ref.root
来限制一个video中引入的新主题的数量。 如果你更喜欢使用pipe理员SDK,那是完全没问题的。
- 在GAE Flex上禁用使用admin SDK node.jsloggingFirebase数据库
- 错误:未创buildFirebase应用“” – 调用Firebase App.initializeApp()
- 如何只获取Firebase数据库的更改值?
- 使用Google API的Firebase – 需要帐单和/或身份validation
- 使用NodeJS的Firebase中的事务数据为null
- Admin SDK Auth错误,错误的错误代码
- 如何在Firebase的Cloud Functions中创buildHTTP请求?
- 在调用更新()数据库ref javascript的Firebase无效path
- 如何获取Firebase云服务器中的服务器时间戳记?