gpt4 book ai didi

ios - 查询 Firebase iOS 最有效的方法

转载 作者:行者123 更新时间:2023-11-30 12:52:38 24 4
gpt4 key购买 nike

我正在开发一个应用程序,该应用程序将使用用户的位置并使用 URL 中的邮政编码执行 Web 请求。这相当快,通常需要 1-3 秒。我正要发布该应用程序,但阅读了使用条款,并且无法在我的应用程序中使用他们的服务。此后,我下载了一个 77k 行邮政编码电子表格,将其转换为 JSON,然后将其上传到 Firebase。我目前正在应用程序中查询 Firebase 以搜索邮政编码,但现在需要大约 10-15 秒。我的代码如下:

    func firebaseSearch(zipCode: String) {
let conditionRef = FIRDatabase.database().reference().child("locations")

let query = conditionRef.queryOrderedByChild("zip").queryEqualToValue(zipCode)

query.observeEventType(.Value, withBlock: { snapshot in

for child in snapshot.children {
print(child.value["state"])

}

})

}

我的 firebase 结构如下:

  • “地点”
    • “1”
      • zip :“12345”
      • 状态:“XX”
    • “2”
      • zip :“12345”
      • 状态:“XX”

我尝试思考如何构建 Firebase 使其更加高效,例如让状态成为父项,并在其中包含子项。我想将所有条目作为邮政编码上传;但是,我的电子表格有太多重复的代码,而且我知道 firebase 不允许重复。有没有更有效的方法来查询 firebase?如果我从第一个邮政编码开始输入条目号(当前从 1 到 77k),然后查询邮政编码中的 +/- 值,然后过滤这些结果,会怎么样?我唯一担心的是,查看最后一个邮政编码,条目号与实际邮政编码相差大约 20k。我很感激任何提示/建议,谢谢!

最佳答案

Firebase 建议避免嵌套数据,据我所知,您的结构良好,因为当您在某个位置获取数据时,它也会检索其所有子节点。您如何在应用程序中显示数据?

您是否可以利用分页功能首先查询 25 个项目,然后加载接下来的 25 个项目,依此类推?

query.limitToLast(25).observeEventType(.Value, withBlock: { snapshot in ...

关于ios - 查询 Firebase iOS 最有效的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40770065/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com