要在firebase auth登录后获取Google访问令牌,我知道我可以这样做:
firebase.auth().signInWithPopup(provider).then(function(result) {
var token = result.credential.accessToken;
}
但是如果用户已经过身份验证并且我需要令牌呢?有没有办法从Firebase auth中提取它?
我已经浏览了authState
的每个值,但我找不到我一直在寻找的谷歌访问令牌。
答案 0 :(得分:7)
您无法从onAuthStateChanged
听众或currentUser
获取访问令牌。您只能在身份验证后立即联系signInWithPopup
,reauthenticateWithPopup
,linkWithPopup
,getRedirectResult
等,Firebase Auth不会为用户管理OAuth令牌。如果您对此功能有强烈的感受,请在Firebase论坛上提交功能请求:https://groups.google.com/forum/#!forum/firebase-talk
您也可以使用GApi库获取Google访问令牌,并将其传递给Firebase,以便通过signInWithCredential
登录。这里的优点是GApi将为您管理该OAuth令牌。