从 vuejs 请求时,Firebase 不返回数据

Posted

技术标签:

【中文标题】从 vuejs 请求时,Firebase 不返回数据【英文标题】:Firebase does not return data when requested from vuejs 【发布时间】:2021-06-05 03:43:32 【问题描述】:

我的firebase数据库中有以下类型的记录


    "profiles": 
        "py5rBNf45PSjS5SC319xB4dn8OC3": 
            "balance": 0,
            "nickName": 3,
            "firstName": 3,
            "secondName": "",
            "lastName": "",
            "country": "",
            "city": "",
            "home": "",
            "phone": "",
            "signUpDate": "",
            "verified": false,
            "goToVerified": false,
            "turnover": 85,
            "lusingTrade": 0,
            "profitTrade": 0,
            "lastPaymentDate": 0,
        
    

我需要获取这些数据。我在我的 vuex 文件中这样做

fbProfileReadData(commit, userId)
        let userProfile = firebaseDb.ref('profies/'+userId)
        alert(userProfile)

        userProfile.once('value', snapshot => 
            commit('setFbProfileReadData', true)
            let testVal = snapshot.val()
            console.log(testVal) // I see null here
        , error => 
            showErrorMessage(error.message)
        )
        console.log("FB PROFILE READ DATA")
,

但我没有得到我需要的数据,即使正在创建快照对象并且我没有看到请求错误。我究竟做错了什么?我该如何解决这个问题?

【问题讨论】:

【参考方案1】:

您将profiles 错误输入为profies

let userProfile = firebaseDb.ref('profies/'+userId)

您可以添加一些基本的安全规则,不仅是为了安全,还可以发现类似这样的错误。

【讨论】:

哦,伙计!我真笨。谢谢!是工作!我刚开始学习平台,同时我必须学习类星体......你能指导我如何使用规则识别此类错误吗?目前最让我难以理解的是规则管理。 @EthicalHacking 如果您的规则允许在“配置文件”而不是 root 读取,您会收到一个有用的 Permission denied at "profies" 错误。阅读文档,它们很好地涵盖了基础知识。我还喜欢将大多数 db ref 预定义为常量,这样我就不会冒险输入错误。 谢谢你的朋友!!

以上是关于从 vuejs 请求时,Firebase 不返回数据的主要内容,如果未能解决你的问题,请参考以下文章

从 Firebase 存储网络下载图像 - vuejs

尝试在 vuejs 中更新 firebase 文档时,我无法解决此未定义字段问题

VueJS 方法没有从 Axios 返回响应

vuejs vue-router 不适用于 Firebase 托管

在 Vuejs 中渲染 DOM 之前,使用路由器中的参数获取 firebase 数据(使用或不使用 vuefire)?

VueJS和Firebase,刷新时历史模式404错误