如何在 Firebase 数据库中解压多层嵌套 JSON

2023-12-01

在我的应用程序中,我会定期有一个 JSON 主题,例如message,然后嵌套在其中是random ID,那么message文本作为随机 ID 内的字符串。但是,我需要破译多个级别的随机 ID。在 Firebase for Swift 中这可能吗?这就是我的意思:

enter image description here

这是我的代码:

     Database.database().reference().child("app").observe(.childAdded) { (snapshot) in
         //app is first in the JSON tree
         let dict = snapshot.value as! [String: Any]

         let msg = dict["message"] as! String

显然,这会导致应用程序崩溃,因为它正在第一个 RandomID 中查找“Message”。有针对这个的解决方法吗?我还没有找到专门针对我正在寻找的内容的资源。谢谢。


你会想要循环的孩子snapshot如图所示here:

Database.database().reference().child("app").observe(.childAdded) { (snapshot) in
    for child in snapshot.children {
        let snap = child as! DataSnapshot //downcast

        let dict = snap.value as! [String: Any]
        let msg = dict["message"] as! String
    }
})

另请参阅:

  • 从 Firebase 快照数组中获取数据
  • Swift Firebase - 如何在使用 queryOrdered(byChild: ).queryEqual(toValue: ) 时获取所有 k/v
  • other 关于循环子节点的问题
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Firebase 数据库中解压多层嵌套 JSON 的相关文章

随机推荐

  • 调整 UITableViewCell 框架大小问题

    我正在尝试调整我的大小UITableViewCell s框架通过 cell setFrame CGRectMake cell frame origin x cell frame origin y cell frame size width
  • 为什么unix和Java运行时显示的统计数据存在差异

    我的应用程序遇到一些内存问题 需要帮助理解这些统计数据 Unix top 显示了我的进程的这些统计数据 VSZ 37 4g RSS 20 0g 因此 这意味着 20g 当前已换入进程并正在使用 但是 当我使用运行时类从应用程序中打印统计信息
  • 安装了最新的 JDK 1.8.0,但我的 Javac 版本仍然显示旧版本(Windows 7 - 64)

    我一直在尝试使用 Angular 安装 NativeScripttutorial在过去的两天里 我不断遇到有关 Android SDK 安装不正确和冻结的问题 最后在尝试安装 Android Studio 之前重新安装了最新的 JDK 和
  • “无法在客户端计算机上加载 DLL 'SQLite.Interop.dll' 错误

    我创建了一个 Winforms 应用程序 并将 SQLite 与 Entity Framework 6 结合使用 我使用的是 Visual Studio 2013 该应用程序在我的本地计算机上完美运行 但是 当程序在另一台机器上运行时 会出
  • 对 var2 的更改也会更改 var1,var1 是从该变量派生的

    我正在制作一个 PowerShell 脚本 并遇到了一个奇怪的问题 至少对于我的世界观来说是这样 这是具有 1 个属性和一些整数值的对象 Source Source Priority 43 37 26 51 23 69 6 43 我想创建一
  • ng2-charts条形图不显示数据/图表标签

    我在 angular2 中使用 ng2 charts 构建了水平条形图 但我不确定为什么我没有看到图形数据 也没有在控制台中看到任何错误 HTML
  • 迭代 JSON 对象字符串

    我是一个 JavaScript 菜鸟 在创建 json 字符串后 我有一个由 google gson API 创建的 JSON 字符串 我将其传递给我的 javascript 函数 所以在 javascript 变量中我有一个字符串如下 v
  • 如何创建可在 Windows 7 Phone 和 iPhone 上运行的应用程序?

    很清楚单点触控是解决方案的一部分 因为它允许 C 代码在 iPhone 上运行 然而 Mono Touch 包装了 iPhone API 因此不提供通用 API 另一种选择是一个 jave 脚本工具包 它可以在两者上工作并提供在线数据存储
  • 如何在 IBM Watson 聊天机器人对话中添加新行?

    目前 我正在使用 IBM Watson Coversation api 提供的聊天机器人服务 现在我面临一个问题 与在聊天机器人的文本回复中添加新行有关 谁能告诉我该怎么做 在这种情况下 您可以使用HTML为此 内部对话流程为 br 检查我
  • Unity - 如何从不同的场景获取游戏对象?

    首先 我是一个初学者 所以对我要轻松一些 我正在尝试从另一个场景激活和停用游戏对象 游戏中的玩家 基本上 我试图通过停用当前玩家模型来更改游戏场景中的玩家 并在用户按下商店场景中的某个按钮时激活游戏场景中所需的玩家模型 但我无法访问游戏对象
  • 在已安装程序列表中显示发布者名称

    我使用 Wix Toolset v3 11 生成 msi我的 Windows 应用程序的安装程序 如何让发布者名称出现在我的申请条目中设置 gt 应用程序和功能 I noticed that some entries in that lis
  • dplyr 如何按组落后

    我有一个包含交货时间的订单和应收账款的数据框 我可以使用 dplyr 根据组提前时间填写接收栏吗 df lt data frame team c a a a a a b b b b b order c 2 4 3 5 6 7 8 5 4 5
  • 如何在 JSF 中防止双击

    我们有一些搜索页面需要运行大量数据 并且需要一段时间才能完成 当用户单击搜索按钮时 我们希望不允许他们再次提交搜索结果 在 JSF 中是否有进行 双击 检测 预防的最佳实践 PrimeFaces 组件似乎可以做我们想要的事情 因为它会在单击
  • Python请求响应403禁止

    所以我想抓取这个网站 https www auto24 ee我能够毫无问题地从中抓取数据 但今天它给了我 响应 403 我尝试使用代理 将更多信息传递给标头 但不幸的是似乎没有任何效果 我在互联网上找不到任何解决方案 我尝试了不同的方法 之
  • 构建 3D Pandas 数据框

    我在 Pandas 中构建 3D DataFrame 时遇到困难 我想要这样的东西 A B C start end start end start end 7 20 42 52 90 101 11 21 213 34 56 74 9 45
  • 将图像从 Firebase 下载到 Flutter

    有很多将文件上传到 firebase 并获取 downloadUrl 的示例 但我没有发现获取图像的 DownloadURL 并在 Flutter 小部件中使用它的示例 这是与上传文件相关的 final StorageReference r
  • 从 Java 字符串中删除 ✅、

    我有一些字符串 其中包含各种不同的表情符号 图像 符号 并非所有字符串都是英语 其中一些字符串是其他非拉丁语言 例如 railway Cats and dogs I m on Apples Vi sign I m the king Cor
  • Jenkins Pipeline - SVN 轮询

    我有一个 Jenkins 管道模板 它在 Subversion 中使用 Jenkins 文件 Jenkins文件有svn checkout方法来签出真实的应用程序 真实应用程序的svn url是从jenkins环境变量传递的 我需要对实际应
  • Cron 作业在特定时间启动和停止

    是否可以设置一个 cron 作业只在某些日子的晚上工作 例如每个月的第一天下午 3 点到晚上 9 点 我只想在晚上服务器负载较低时进行电子邮件营销活动 是否可以在某个时间运行一个 cron 作业并在某个时间停止它 您可以在晚上 9 点使用第
  • 如何在 Firebase 数据库中解压多层嵌套 JSON

    在我的应用程序中 我会定期有一个 JSON 主题 例如message 然后嵌套在其中是random ID 那么message文本作为随机 ID 内的字符串 但是 我需要破译多个级别的随机 ID 在 Firebase for Swift 中这