簡體   English   中英

Firebase 獲取帶有uid的用戶頭像

[英]Firebase get user profile picture with uid

我知道我可以獲取當前登錄用戶的個人資料圖片,但是如何根據他們的 uid 獲取其他人的頭像? 這是我嘗試過的:

database.ref("classes/" + currentClassId + "/chat/main").on('value', (snapshot) => {
    var p = 0
    console.log(snapshot.val())
    if(snapshot.val() != null){p = snapshot.val().data.msgCount}
    var min = p - 100
    if(min <= 0){min = 0}
    var max = p
    $("#log").empty()
    if(snapshot.val() != null){
        for(i=min; i<=max - 1; i++){
            console.log(i)
            database.ref("classes/" + currentClassId + "/chat/main/log/" + i).once('value').then(s => {
                $("#log").append([
                    $("<div/>").append([ 
                        $("<img/>").attr("src", firebase.auth().getUser(s.val().sender.uid).then(function(profile){
                            return profile.PhotoUrl // <<<<<< !!!!!! This part doesnt work !!!!!! <<<<<<
                        })),
                        $("<p/>").text(s.val().message).addClass("message")
                    ]).css("display: inline;")
                ])
            })
        }
    }
})

這是我得到的:

Uncaught (in promise) TypeError: firebase.auth(...).getUser is not a function
    at <anonymous>:178:65

是否有其他方法可以在 firebase auth 中獲取另一個注冊用戶的個人資料圖片 url? (我只使用 Javascript,沒有 NodeJS,所以我認為我不能使用 firebase 管理員?)

客戶端應用程序代碼無法實現您嘗試做的事情。 出於安全原因,用戶根本無法直接訪問其他用戶的個人資料信息。 根本沒有 API ,也沒有低級別的權限。

如果您希望用戶能夠看到其他人的信息,您需要將該數據寫入數據庫,然后查詢數據庫以稍后獲取它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM