Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法访问我的web应用中的firebase实时数据库_Javascript_Firebase_Firebase Realtime Database - Fatal编程技术网

Javascript 无法访问我的web应用中的firebase实时数据库

Javascript 无法访问我的web应用中的firebase实时数据库,javascript,firebase,firebase-realtime-database,Javascript,Firebase,Firebase Realtime Database,我正在开发firebase webapp,面临一个问题。 我无法访问(读/写)firebase实时数据库 <script src="https://www.gstatic.com/firebasejs/4.12.0/firebase.js"></script> <script> var config = { apiKey: "AIzaSyCPYu_iqHjNoXjMfdMVLoYs5Graf2gdz7I", authDomain: "shar

我正在开发firebase webapp,面临一个问题。 我无法访问(读/写)firebase实时数据库

 <script src="https://www.gstatic.com/firebasejs/4.12.0/firebase.js"></script>
<script>
var config = {
    apiKey: "AIzaSyCPYu_iqHjNoXjMfdMVLoYs5Graf2gdz7I",
    authDomain: "sharing-is-caring-967c8.firebaseapp.com",
    databaseURL: "https://sharing-is-caring-967c8.firebaseio.com",
    projectId: "sharing-is-caring-967c8",
    storageBucket: "sharing-is-caring-967c8.appspot.com",
    messagingSenderId: "884406512169"
  };
firebase.initializeApp(config);

    firebase.auth().signInWithEmailAndPassword("myemail@gmail.com", "Qqqq123").then(function(info) {
        var uid = info.uid;
        firebase.database().ref('users/' + uid + '/userDetails').once('value').then(function(data) {
            alert(data)
        }).catch(function(error) {
            alert(error.message);
        });
    }).catch(function(error) {
        // Handle Errors here.
        var errorCode = error.code;
        var errorMessage = error.message;
        alert(errorMessage);
        // ...
    });
</script>

数据库结构

{
  "users" : {
    "BzucCBivhiRUogK5GeNrMV6k6M83" : {
      "userDetails" : {
        "displayName" : "Stanislav Sergeev",
        "email" : "stanislav.atos@yahoo.com",
        "notifications" : true,
        "phoneNumber" : "",
        "profile_image" : "",
        "pushToken" : "ec7iJ7Mt7Lg:APA91bFb8NK2XeaLVUgr-DEPRFuLMDCk9_tIr_eHBjmuZPnHDUvFuCsj3kez4F5-Y9CjVXOY6VlsFi5nlazSZys4KBjwCKcpINbV5S2ZEaH09aWZ6sLga8dOja-UIp3Iz3DSOAb4bcH4"
      }
    }
  }
}

因此,根据评论和您的数据库结构:

首先,我不明白下面这条规则是为了什么

 "threads": {
    "$tid": {
      "messages": {
        ".indexOn": ["read", "date"]
      }
    }
  }
第二,你能尝试一下基本规则吗:

{
  "rules": {
    ".read": "auth != null",
    ".write": "auth != null"
  }
}
第三,你确定你在流血吗?如果你这样做,你会得到什么

var uid = info.uid;
console.log(uid);

请注意,您使用的方法显然将被弃用,请参阅


编辑:这是工作,我复制了你的情况。注意
返回
数据.val()


我以前也有过同样的问题,这与你的位置有关。
请尝试使用VPN。

您的索引规则中似乎有一个输入错误:$tid而不是$uidJust sec,我将附上。您以前遇到过这个问题吗?@Stanislas Sergeev注意到,您可以通过单击Firebase数据库控制台中的“导出”按钮轻松获得数据库的文本导出(JSON),但内容太多了data@StanislasSergeev您可以删除大部分数据并保留一组“有意义的完整”显示structure@StanislavSergeev如果使用一组简单的规则进行查询,会发生什么?不会发生。我把规则改为简单,但它不起作用。重要的是,我也有iOS应用程序,即使web应用程序不起作用,它也能起作用work@StanislavSergeev请再试一次。它非常适合我,数据结构与您相同,并且具有简单的规则(即“.read”:“auth!=null”,“.write”:“auth!=null”)。请注意,在我的代码中,输出是在浏览器控制台中完成的,而不是通过警报。它与firebase成员资格有关。免费版本有时在某些地方不起作用。我不知道确切的位置,但确实如此。
var uid = info.uid;
console.log(uid);
firebase.auth().signInWithEmailAndPassword("azerty@nmw.com", "****")
    .then(function (info) {
        var uid = info.uid;
        console.log(uid);
        return firebase.database().ref('users/' + uid + '/userDetails').once('value');
    })
    .then(function (data) {
        console.log(data.val());
    })
    .catch(function (error) {
        alert(error.message);
    });