Javascript 使用Firebase令牌进行身份验证
我已使用以下代码对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.
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将使用默认的错误规则。