Firebase childbyAutoId 每次都返回相同的奇怪键

Posted

技术标签:

【中文标题】Firebase childbyAutoId 每次都返回相同的奇怪键【英文标题】:Firebase childbyAutoId returns the same strange key every time 【发布时间】:2015-06-01 11:45:31 【问题描述】:

当使用 childByAutoId 时,会发生一些非常奇怪的事情。我每次都没有得到唯一的 id,而是得到以下密钥:

-------------------0

我知道密钥是使用客户端时间戳生成的,所以我尝试通过 ios 模拟器和实际设备运行我的代码,但结果相同。

我的代码没有做任何有趣的事情,但这里仅供参考:

func sendRandomMessage() 
        let firebaseRootRef = Firebase(url:firebaseRootUrl)
        let newMessageRef = firebaseRootRef.childByAutoId()
        println(newMessageRef.key)
    

我使用的是 Firebase 2.3.0

【问题讨论】:

我有一个临时解决方法:恢复到 Firebase 2.2.2 可以解决问题。 [免责声明:我在 Firebase 工作] 嗨,David,感谢您提供清晰的报告和回归检查。我们刚刚发布了适用于 iOS 的 Firebase SDK 2.3.1 版,它解决了这个问题。 firebase.com/docs/ios/changelog.html 【参考方案1】:

Firebase SDK for iOS 2.3.0 中存在导致此问题的错误。

它已在 2.3.1 中修复。见https://www.firebase.com/docs/ios/changelog.html

【讨论】:

以上是关于Firebase childbyAutoId 每次都返回相同的奇怪键的主要内容,如果未能解决你的问题,请参考以下文章

检索存储在 childByAutoId() 参考 (Swift) 中的特定 Firebase 数据

在 ChildByAutoId 下从 Firebase 检索数据并添加到数组 - Xcode - Swift

使用 updateChildValues 更新 childByAutoId

如何快速从 childByAutoID() 获取密钥 [重复]

Firebase 保存数据方法异步或同步

从 Firebase Auto Id 中检索数据 - Firebase Swift