2016-04-26 81 views
0

在我火力地堡iOS應用程序,我有一個端點指向用戶被稱爲「用戶」應用程序,這個終端裏面,基本結構如下:火力地堡的iOS快照值返回null

  • 用戶:

我現在面臨的問題(之前的工作完美的罰款)是,當我使用observeEventType或observeSingleEvent並嘗試檢索路徑中snapshot.value:「用戶/ userid-#「,即使數據顯示在我的儀表板上的該位置,它也會讓我爲空。

這種情況只發生在用戶標識符之一。我可以成功檢索所有其他用戶的數據。由於數據實際上顯示在儀表板上,所以我不知道爲什麼當檢索數據時,我得到了空值而不是該位置顯示的數據。

我使用的代碼非常簡單:

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

我得到了什麼是null而不是數據

任何人都對那會發生什麼想法?

謝謝!

+0

查看您使用的代碼和實際的JSON(作爲文本,您可以通過單擊Firebase儀表板中的「導出」按鈕輕鬆獲取),在這裏將有很長的路要走。請參閱[MCVE](http://stackoverflow.com/help/mcve)。 –

+0

我用我使用的基本代碼編輯。沒有什麼花哨。 –

+0

請閱讀有關提供鏈接的MCVE的頁面。你的問題中仍然缺少JSON,這意味着我們必須做出可能或不可能再現問題的東西。你讓別人幫助你越容易,你就越有可能獲得幫助。 –

回答

-1

請檢查您的firebase數據庫中是否有appropirate節點。並在那裏增加了一些值。

0

首先確保您已通過身份驗證。 如果您想讓用戶在未經身份驗證的情況下搜索該節點,請更新規則:true。

更新firebaseReference棄用功能childByAppendingPath與子功能:

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

這是它。

0

有關最新SDK火力地堡

創建火力基準爲:

@property (strong, nonatomic) FIRDatabaseReference *dataRef; 

,並致電觀察者:

dataRef = [[dataRef child:@"users"]child:@"userid-1"]; 

[dataRef observeEventType:FIRDataEventTypeValue withBlock:^(FIRDataSnapshot * _Nonnull snapshot){ 

    NSLog(@"%@", snapshot.value); 

}) 

它爲我工作。