2016-07-07 44 views
1

下面是我的firebase數據庫中的數據,我想通過使用他的firebase userID獲取用戶的「doctorDetails」。如何檢索與Firebase用戶標識相匹配的數據

數據庫結構:醫生/用戶ID/doctorDetails

// Data in Database : 

{ 
    "doctors" : { 
    "65smvSYkhfVBtM2GrPmOl3cdgDy1" : { 
     "doctorDetails" : { 
     "designation" : "Principal Scientist", 
     "docRegNumber" : "242354", 
     "doctorName" : "Dr Nicole Tesla", 
     "doctorVerified" : false, 
     "mobileNumber" : "970050 8070", 
     "specialization" : "Physicist" 
     } 
    }, 
    "FOCSwhfIZSOpqUgueoWlakSkVYr1" : { 
     "doctorDetails" : { 
     "designation" : "Principal Scientist", 
     "docRegNumber" : "87509", 
     "doctorName" : "Dr Curie ", 
     "doctorVerified" : false, 
     "mobileNumber" : "80690 00343", 
     "specialization" : "Physicist" 
     } 
    } 
    } 
} 

下面是我用用他們的火力用戶ID獲得「doctorDetails」的代碼。

var userId = firebase.auth().currentUser.uid;  
firebase.database().ref('doctors/'+userId+'/doctorDetails').on('value', function(snapshot){ 
    console.log(snapshot.val()); 
}); 

但是,我仍然無法獲得與用戶ID的用戶可以有人請建議「醫生細節」我要去的地方錯了嗎?

[編輯1] 上述代碼只偵聽更改,如何在不附加偵聽器的情況下提取數據。

[編輯2] 這裏是我設置的權限,我需要做些什麼改變才能讀取數據?

{ 
    "rules": { 
    "users": { 
     "$uid": { 
     ".write": "$uid === auth.uid" 
     } 
    }, 
    "doctors":{ 
     "$uid": { 
     ".write": "$uid === auth.uid" 
     } 
    } 
    } 
} 
+0

您必須看到此[https://groups.google.com/forum/#!topic/firebase-talk/836OyVNd_Yg](https://groups.google .com/forum /#!topic/firebase-talk/836OyVNd_Yg) –

+0

你有沒有調試過你的userId?在代碼中查看您的Firebase電話應該工作正常。 – adolfosrs

+0

我可以記錄userId。 – kurrodu

回答

0

的問題是我的數據庫規則:

舊的數據庫規則

{ 
    "rules": { 
    "users": { 
     "$uid": { 
     ".write": "$uid === auth.uid" 
     } 
    }, 
    "doctors":{ 
     "$uid": { 
     ".write": "$uid === auth.uid" 
     } 
    } 
    } 
} 

更新了數據庫規則(在databases.rules.json),以低於該無助於解決問題

{ 
    "rules": { 
    "users": { 
     "$uid": { 
     ".write": "$uid === auth.uid", 
     ".read": "$uid === auth.uid" 
     } 
    }, 
    "doctors":{ 
     "$uid": { 
     ".write": "$uid === auth.uid", 
     ".read": "$uid === auth.uid" 
     } 
    } 
    } 
} 
相關問題