提问者:小点点

如何处理firebaseauth令牌过期?


到目前为止,我使用firebase已经2年了,我从来不清楚如何处理firebase身份验证令牌过期。

我使用的是android,一旦使用firebaseauth.getInstance()。SigninWithCustomToken(token);,firebase就会收到如下消息:

{
   "t":"d",
   "d":{
      "r":5,
      "b":{
         "s":"ok",
         "d":{
            "auth":{
               "uid":"test",
               "token":{
                  "exp":1592230969,
                  "user_id":"test",
                  "iat":1592227369,
                  "sub":"test",
                  "aud":"test",
                  "auth_time":1592227369,
                  "iss":"https://securetoken.google.com/igibo-b0b27",
                  "firebase":{
                     "identities":{

                     },
                     "sign_in_provider":"custom"
                  }
               },
               "provider":"custom",
               "user_id":"test"
            },
            "expires":1592230969
         }
      }
   }
}

在此请求之后,对firebaseAuth.getInstance()。getCurrentUser()的任何未来调用都将返回有关此经过身份验证的用户的信息。
在此json中,此身份验证令牌可能会过期,但我不清楚此身份验证令牌的firebase行为是什么。。。

FireBaseAuth.GetInstance()。GetCurrentUser()是否会在令牌过期后返回null?
firebase是否会自动续订令牌,使其永不过期?
如果需要手动监视和重新验证令牌,如何执行?

如果我不调试,我甚至无法在任何地方找到过期的信息。


共1个答案

匿名用户

Firebase身份验证令牌在创建后一小时到期。 FireBaseSDK在大约55分钟后自动刷新令牌,这意味着您通常不必自己做任何事情。 只有当令牌无法刷新时,当前用户才会变为null,例如,如果该帐户已在服务器上被禁用。