【问题标题】:Storing session data in flutter across pages best practice跨页面存储会话数据最佳实践
【发布时间】:2021-01-09 13:44:29
【问题描述】:

我有一个 Flutter 应用程序,它包含一个用户名和一个令牌以与 Web 服务通信。 如何使用最佳实践有效地管理用户名和令牌?目前我正在将它们写入数据库并在每次我想做请求时选择它们。

我尝试将 bloc 提供程序 flutter bloc 与 BlocProvider 一起使用。我有 LoggedIn 和 LoggedOut 状态以及 Login 和 Logout 事件。

另外,我看过 secure storage,但我无法获得所有页面的可用数据。

另外,我没有使用 firebase API。

如果我应该提供一些代码 sn-ps,请告诉我。

【问题讨论】:

  • 在我的应用程序中,我只是共享首选项和一个单例类来在登录时存储用户值
  • 我认为 firebase 身份验证会更简单、更安全。这是免费的。您可以将用户的 id 令牌发送到您的 Web 服务器以验证是哪个用户发送的。 medium.com/firebase-tips-tricks/…firebase.google.com/docs/auth/admin/verify-id-tokens 。您可以通过以下方式获取 id 令牌:stackoverflow.com/questions/56201378/…
  • 我检查了 firebase,但我不认为它总是 goto。首先,我的后端已经完成(由一个相对丰富的 REST API 组成)。其次,如果您的流量不仅仅是我测试系统的流量,那么 firebase 根本不是免费的。如果我错了,请纠正我,但在 firebase 中从头开始看起来不是最好的主意。

标签: flutter security flutter-provider flutter-bloc


【解决方案1】:

我现在使用SharedPreferences。 API 非常简单,我编写了一个包装器来摆脱 (Strings) 键。此外,包装器保存当前会话的值。这样做的好处是,我可以直接处理这些值,而不需要异步读取它们。

【讨论】:

    猜你喜欢
    • 2015-10-16
    • 1970-01-01
    • 1970-01-01
    • 2013-01-15
    • 2011-02-14
    • 1970-01-01
    • 2022-06-29
    • 1970-01-01
    • 2011-05-12
    相关资源
    最近更新 更多