gpt4 book ai didi

javascript - 在 Electron 中使用 AWS Cognito 的持久用户 session

转载 作者:搜寻专家 更新时间:2023-11-01 00:50:37 25 4
gpt4 key购买 nike

在 Electron 中持久化 AWS Cognito 用户 session

AWS Cognito 将当前用户 session 存储在 localStorage 中。虽然在用户登录后用户 session 存在于 localStorage 中,但 localStorage 在 Electron 中并不持久 - 因此当应用程序重新启动时,用户 session 消失并且用户必须重新登录。通常,用户 session 将从 localStorage 接收,因为它在浏览器中是持久的。

我知道可以使用 electron-json-storage在 Electron 和 Node 应用程序中持久存储数据,但由于 AWS cognito 使用 localStorage,我只能使用一种将 localStorage 更改为持久性的方法,即重定向到文件存储。

我试过了node-localstorage这有效,但 cognito 仍然使用浏览器中的 localStorage,即使设置了 global.localStorage

我知道可以向 userPool 传递一个 {Storage: ...} 对象以将其用作存储,但它仍然使用原始的 localStorage,当我将 Node 本地存储传递给它。

TLDR;

  • 如何使 AWS Cognito 用户 session 在 electron 中持久化?
  • 如果可能,我能否在全局范围内将 localStorage 替换为 node-localstorage,以便 AWS Cognito 使用它?

最佳答案

Cognito 将为您提供三个 token idTokenaccessTokenrefreshToken一个简单的想法是将 refreshToken 保存在您认为持久化的 localstorage 中。并在 Electron 应用程序上开始使用 refreshToken 对 Cognito 上的用户进行身份验证。

关于javascript - 在 Electron 中使用 AWS Cognito 的持久用户 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52146761/

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