根据Firebase documentation,刷新令牌仅适用于需要明确刷新令牌的高级方案。
我应该在哪些情况下使用该令牌,使用它有什么好处?
private afAuth: AngularFireAuth
this.afAuth.auth.currentUser.getIdToken()
.then(idToken => // Gives me a different token from key name called pa);
另外,我不确定refreshToken与getIdToken()
返回的令牌之间的区别。目前,我将后者用于HTTP请求。
注意: getIdToken 会返回用于向Firebase服务标识用户的JWT令牌。
答案 0 :(得分:1)
<强> Refreshtoken:强>
用户帐户的刷新令牌。仅用于需要显式刷新令牌的高级方案。
<强> GetIdToken:强>
返回用于向Firebase服务标识用户的JWT令牌。 如果当前令牌尚未过期,则返回当前令牌,否则将刷新令牌并返回新令牌。
refreshtoken
用于以下情况:
刷新当前用户的访问令牌。这种情况可能发生在以下情况:
用户更改其密码:Firebase会发出新访问权限并刷新令牌并呈现旧令牌已过期。出于安全原因,这会自动使用户的令牌过期和/或在每台设备上注销用户。
用户重新进行身份验证:某些操作要求最近发出用户的凭据;此类操作包括删除帐户,设置主电子邮件地址和更改密码。而不是注销用户然后再次登录用户,从用户获取新凭据,并将新凭据传递给User对象的reauthenticate方法。