Javascript 使用Firebase令牌进行身份验证

Javascript 使用Firebase令牌进行身份验证,javascript,firebase,firebase-realtime-database,firebase-security,Javascript,Firebase,Firebase Realtime Database,Firebase Security,我已使用以下代码对Firebase数据库中的测试用户进行了身份验证: login(email, password) { this.firebaseAuth.auth.signInWithEmailAndPassword(email, password) .then(value => { console.log('Nice, it worked!', value); this.firebaseAuth.auth.currentUser.

我已使用以下代码对Firebase数据库中的测试用户进行了身份验证:

  login(email, password) {
    this.firebaseAuth.auth.signInWithEmailAndPassword(email, password)
      .then(value => {
        console.log('Nice, it worked!', value);
        this.firebaseAuth.auth.currentUser.getIdToken(true)
          .then((idToken) => {
            // print out token
            console.log('Id token -> ', idToken);
          });
      })
      .catch(err => {
        console.log('Something went wrong:',err.message);
      });
  }
在此位置,我为该用户提供了课程列表:

该数据库的规则如下:

// These rules grant access to a node matching the authenticated
// user's ID from the Firebase auth token
{
  "rules": {
    "users": {
      "$uid": {
        ".read": "$uid === auth.uid",
        ".write": "$uid === auth.uid"
      }
    }
  }
}
我在《邮递员》中尝试测试,看看我是否可以点击该用户的数据库并返回该位置的用户列表,但我要么返回
未找到
,要么返回谷歌登录屏幕

使用Firebase令牌时,是否可以将授权令牌作为标头发送?或者这只是谷歌OAuth代币

根据这一点,我应该能够点击数据库并通过如下操作取回我的数据:

curl "https://<DATABASE_NAME>.firebaseio.com/users/ada/name.json?auth=<ID_TOKEN>"
curl”https://.firebaseio.com/users/ada/name.json?auth="
在我的例子中应该是这样的:

curl "https://<DATABASE_NAME>.firebaseio.com/<GUID>/courses?auth=<ID_TOKEN>"
curl”https://.firebaseio.com//courses?auth="
我的邮递员请求标头如下所示:

curl "https://<DATABASE_NAME>.firebaseio.com/<GUID>/courses?auth=<ID_TOKEN>"


授权firebase令牌

当您使用firebase数据库api时,请求是什么样子的?投票结束此问题的人是否愿意解释原因?@JasonGoemaat您是说当我通过api尝试相同的请求时?我还没试过。我们将很快尝试并报告您没有任何课程规则,因此Firebase将使用默认的错误规则。