Firebase:我什么时候应该使用refreshToken?

Jef*_*Kim 8 firebase firebase-authentication

根据Firebase 文档,刷新令牌仅适用于需要显式刷新令牌的高级场景

在什么情况下我应该使用该令牌,使用它有什么好处?

private afAuth: AngularFireAuth

this.afAuth.auth.currentUser.getIdToken()
.then(idToken => // Gives me a different token from key name called pa);
Run Code Online (Sandbox Code Playgroud)

另外,我不确定刷新令牌和返回的令牌之间的区别getIdToken()。目前,我使用后者来处理 HTTP 请求。

注意: getIdToken返回一个 JWT 令牌,用于向 Firebase 服务识别用户

Pet*_*dad 6

刷新令牌:

用户帐户的刷新令牌。仅用于需要显式刷新令牌的高级场景。

获取IdToken:

返回用于向 Firebase 服务识别用户的 JWT 令牌。如果当前令牌尚未过期,则返回当前令牌,否则这将刷新令牌并返回一个新令牌。

用于refreshtoken以下情况:

当前用户的访问令牌已刷新。这种情况可能在以下情况下发生:

  1. 访问令牌过期:这是常见情况。刷新令牌用于获取一组新的有效令牌。
  2. 用户更改密码:Firebase 发出新的访问和刷新令牌,并使旧令牌过期。出于安全原因,这会自动使用户的令牌过期和/或在每台设备上注销用户。

  3. 用户重新进行身份验证:某些操作要求用户的凭据是最近颁发的;此类操作包括删除帐户、设置主电子邮件地址和更改密码。不要注销用户然后再次登录用户,而是从用户获取新凭据,并将新凭据传递给 User 对象的重新验证方法。

更多信息在这里: https: //firebase.google.com/docs/auth/users