gpt4 book ai didi

Flutter 最佳实践 : Do I need to refresh the idtoken every time I make an HTTP Request?

转载 作者:行者123 更新时间:2023-12-03 02:53:03 24 4
gpt4 key购买 nike

我正在使用 Flutter 开发前端 UI,使用 Firebase 进行身份验证,并有一个自定义后端 API 来处理对数据库的 HTTP 请求。在 API 上,我传递 Firebase token 并使用它来对用户进行身份验证。我知道 FB token 会在 1 小时后过期,但我正在寻找最干净、最佳的实践方法来确保用户可以在 token 不会过期的情况下继续使用应用程序。

我目前使用的流程是在 flutter 中的每个请求之前获取一个新 token :

         FirebaseUser fbuser = await FirebaseAuth.instance.currentUser();
String mytoken = await fbuser.getIdToken(refresh: true);

但是,感觉这会不必要地减慢任何 http 请求。相反,Dart 中是否有任何客户端工具/api 可以让我验证 token 是否已过期?最好,我只想存储 token ,并在每次调用之前验证它是否过期。如果是,则刷新,否则使用当前 token 。

此处的最佳做法是什么?

最佳答案

如果 ID token 超过 55 分钟,Firebase SDK 会刷新它。这为它提供了 5 分钟的时间窗口,可以在旧 token 过期之前获取新的 ID token 。一旦新的 ID token 可用,客户端当然会开始使用该新的 ID token 。

我认为最佳做法是模仿 Firebase SDK 的功能。 :)

关于Flutter 最佳实践 : Do I need to refresh the idtoken every time I make an HTTP Request?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58523682/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com