- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在开发一个 Android 应用程序,它使用来 self 自己的 REST API 服务器的数据。我想使用 Firebase 身份验证,因为它允许用户以非常简单的方式使用 Google、Facebook、Twitter 等登录。
但我不确定如何使用 ID token :
我不知道这些方法(getToken 和 verifyIdToken)在幕后做了什么,而且因为它们是异步的,我担心它们在每次调用时都会向 Firebase 服务器发出请求。所以我认为在我的每个请求中向 Firebase 服务器发出 2 个请求不是可行的方法......
最佳答案
getToken() 和 VerifyIdToken() 都设计为针对每个传出/传入请求调用。
1) 虽然 getToken() 是异步的,但 Firebase Android SDK 实际上会将当前的 Firebase 用户 token 缓存在本地存储中。只要缓存的 token 仍然有效(即在发出后一小时内),getToken() 会立即返回 token 。只有当缓存的 token 过期时,SDK 才会从远程 Firebase 服务器获取新 token 。
2) VerifyIdToken() 也针对性能进行了优化。它缓存用于在本地计算机上验证 token 签名的 Firebase token 公共(public)证书(有效期为 6 小时)。除了下载公共(public)证书外,不涉及任何 RPC。
关于android - 在Android app上获取id token并在后端服务器验证(How to use id token?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41598222/
我是一名优秀的程序员,十分优秀!