【问题标题】:Firestore document creation fails without an errorFirestore 文档创建失败且没有错误
【发布时间】:2019-07-27 21:28:04
【问题描述】:

Edit3:好的,这似乎是 Firebase 的问题,其他人在推特上发布了同样的问题。我还联系了支持人员。

一段处理创建文档的 Swift 代码突然停止工作。没有引发错误,Firebase 不会在日志中抱怨,我可以从控制台验证文档没有创建,我可以验证设备是否具有健康的互联网连接。为了确定,我还为 Firebase 禁用了离线持久性。

当我尝试调试它时,调试器直接跳过处理错误或成功的块,从不运行它(即从不完成 Firestore 请求?)。

这里是代码

    func createConversation(){
    let conversation : [String : Any] = ["owners" : [
        UserProfile().getProfile().uid!],
                                         "seeking" : true,
                                         "timestamp" : Timestamp(date: Date())
    ]

    var ref: DocumentReference? = nil
    ref = DB().firestore().collection("Conversations").addDocument(data: conversation){ err in
        if let err = err {
            print("Error creating a convo: \(err)")
        } else {
            print("Conversation created with ID: \(ref!.documentID)")
            StateMachine().action(a: .seekingStarted(ref!.documentID))


        }
        print("Conversation Creation finished")
    }
    let documentID = ref?.documentID
    print(ref.debugDescription)

}

我不确定如何解决这个问题,有什么想法吗?

编辑:好的,问题不仅限于这段代码,Firebase 似乎没有与服务器通信。我已经等待 addDocument 返回超过 5 分钟(错误或成功),但这从未发生过。

我注意到在 App BoringSSL 启动时有一点抱怨,但这不是新的,我对其他 Firebase 服务没有问题,它们工作得很好——读取和创建数据没有问题。

Edit2:显然我可以从 Firestore 获取集合和文档,问题似乎仅限于文档/集合创建。

【问题讨论】:

    标签: ios swift firebase firebase-realtime-database google-cloud-firestore


    【解决方案1】:

    文档创建操作需要一点时间,如果将断点放在异步完成块中,肯定会出错或成功。

    【讨论】:

    • 问题是,我已经等了很久,但什么也没发生。 Google 报告说 Firebase 是健康的,如果是连接问题,那么它只会影响 Firebase,因为我对实时数据库没有任何问题。
    • 删除所有断点,只在异步块内放置一个断点,看看会发生什么
    • 等了 5 分钟,什么也没发生,顺便说一句,问题似乎与此无关 - 看起来 Firestore SDK 没有与服务器通信(与其他 Firebase 产品没有问题)并且未能失败有一个很好的错误。如果无法连接,知道如何使其失败吗?
    • 尝试其他方法,例如从 Firestore 获取数据,看看是否可行。
    • 试过了,读一次文档就可以了。 Firestore 实时更新似乎存在问题。我想我会向 Google 创建一个帮助请求,以防他们不知道。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-17
    • 1970-01-01
    相关资源
    最近更新 更多