AWS Cognito强制刷新会话

时间:2017-01-09 20:42:34

标签: javascript amazon-web-services aws-sdk aws-cognito

当我尝试刷新会话令牌(Access,Id,Refresh)时,我遇到了一些问题。我已经阅读了this question,答案帮助我了解了一些情况。但我觉得我要做的并不是getSession的目的。

我正在尝试实现会话过期消息(完成),允许用户扩展其会话(刷新令牌)。根据我收集的关于getSession()的内容,它返回旧令牌(如果它们仍然有效)或新令牌(如果它们无效)。如果我错了,请纠正我。

我试图在每次点击扩展会话时为用户提供新的/刷新的令牌。出于开发目的,我有一个按钮,然后使用扩展会话按钮显示消息。我拨打getSession()时收到的令牌是旧的,但我希望它们是新的。

所以基本上,取消旧会话并给他们一个新会话。

我的问题是:

  1. 我是否错过了对getSession()的理解,如前所述?
  2. 我可以为用户提供新会话令牌(访问权限,身份验证,刷新)吗?
  3. 我可以在没有用户再次登录的情况下执行#2吗?
  4. 谢谢。

    编辑1: 知道我没有使用任何联合身份可能会有所帮助。

1 个答案:

答案 0 :(得分:5)

您可以调用cognitoUser.refreshSession。我在这里找到了一个合理的例子:

Sample code: how to refresh session of Cognito User Pools with Node.js and Express

寻找名为checkTokenExpiration的方法,它完全解释了你需要做些什么才能刷新会话。