【问题标题】:Firebase iOS snapshot value returns nullFirebase iOS 快照值返回 null
【发布时间】:2016-04-26 23:18:34
【问题描述】:

在我的 Firebase iOS 应用中,我有一个端点指向应用中的用户,名为“users”,在这个端点内部,基本结构如下:

  • 用户:
    • 用户 ID-1:
      • 用户名:“测试”
      • 电子邮件:“test@test.com”
    • 等等……

我现在面临的问题(之前工作得非常好)是,当我使用observeEventType 或observeSingleEvent 并尝试检索路径中的snapshot.value 时:“users/userid-#”,即使数据显示在该位置的仪表板上。

这种情况只发生在其中一个用户 ID 上。我可以成功检索所有其他用户的数据。由于数据实际上显示在仪表板上,所以我不知道为什么在检索数据时我得到 null 而不是该位置显示的数据。

我使用的代码很简单:

Firebase *testRef = [self.ref childByAppendingPath:@"users/userid-1"];
[testRef observeSingleEventOfType:FEventTypeValue withBlock:^(FDataSnapshot *snapshot)     {
    NSLog(@"%@", snapshot.value);
}];

我得到的是 null 而不是数据

有人对可能发生的事情有任何想法吗?

谢谢!

【问题讨论】:

  • 查看您使用的代码和实际的 JSON(作为文本,您可以通过单击 Firebase 仪表板中的“导出”按钮轻松获取)在这里会有很长的路要走。见MCVE
  • 我用我使用的基本代码进行了编辑。没什么特别的。
  • 请阅读有关提供我链接的 MCVE 的页面。您的问题仍然缺少 JSON,这意味着我们必须编造一些可能会或可能不会重现问题的东西。您越容易让别人帮助您,您获得帮助的可能性就越大。
  • 如果你只是抓取所有用户并在控制台中打印出来会发生什么?很可能是因为您使用了错误的破折号。

标签: ios objective-c firebase firebase-realtime-database


【解决方案1】:

首先确保您已通过身份验证。 如果您想让用户在未经身份验证的情况下搜索该节点,请更新规则为:true。

用子函数更新 firebaseReference 已弃用的函数 childByAppendingPath:

Firebase *testRef = [[self.ref child:@"users"] child:"userid-1"]; 
[testRef observeSingleEventOfType:FEventTypeValue withBlock:^(FDataSnapshot *snapshot)     {
        NSLog(@"%@", snapshot.value); }];

就是这样。

【讨论】:

    【解决方案2】:

    适用于最新的 Firebase SDK

    将 firebase 引用创建为:

    @property (strong, nonatomic) FIRDatabaseReference *dataRef;
    

    并称你的观察者为:

    dataRef = [[dataRef child:@"users"]child:@"userid-1"];
    
    [dataRef observeEventType:FIRDataEventTypeValue withBlock:^(FIRDataSnapshot * _Nonnull snapshot){
    
         NSLog(@"%@", snapshot.value);
    
    })
    

    它对我有用。

    【讨论】:

      【解决方案3】:

      请检查您在 firebase 数据库中是否有适当的节点。以及在那里添加了一些值。

      【讨论】:

        猜你喜欢
        • 2017-06-25
        • 1970-01-01
        • 1970-01-01
        • 2021-07-03
        • 2020-08-05
        • 1970-01-01
        • 2021-12-05
        • 2017-06-06
        • 2020-10-12
        相关资源
        最近更新 更多