【问题标题】:Access firebase database from web [duplicate]从网络访问firebase数据库[重复]
【发布时间】:2017-09-24 22:55:13
【问题描述】:

我想通过网络访问我的 Firebase 数据库:

从控制台复制的配置:

  var config = {
    apiKey: "AI***********************************98",
    authDomain: "t*****.firebaseapp.com",
    databaseURL: "https://t*****.firebaseio.com",
    projectId: "t*****",
    storageBucket: "t*****.appspot.com",
    messagingSenderId: "224202513016"
  };

  firebase.initializeApp(config);

但是调用:

firebase.database().ref('/calibration/temperature').once('value').then(function(snapshot) {
    console.log(snapshot);
});

结果:

Uncaught (in promise) Error: permission_denied at /calibration/temperature: Client doesn't have permission to access the desired data.

我在数据库中的规则:

{
  "rules": {
    ".read": "auth != null",
    ".write": "auth != null"
  }
}

我尝试使用不同的 API 密钥,或者将它们限制在特定的网页上 - 不幸的是没有成功。

【问题讨论】:

标签: javascript firebase firebase-realtime-database


【解决方案1】:

在安全规则中使用auth != null 将拒绝未经身份验证的用户访问。

您已经调用了initializeApp,但除非您随后调用了signIn... methods 之一,否则您将没有经过身份验证的用户,并且安全规则将拒绝访问。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-16
    • 2017-01-01
    • 2017-04-18
    • 2020-11-03
    • 1970-01-01
    • 2020-02-04
    相关资源
    最近更新 更多