2017-01-09 37 views
2

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

我试图实现一个会话过期消息(完成),允许用户扩展他们的会话(刷新令牌)。从我收集的关于getSession()的信息中可以看出,如果它们仍然有效,它将返回旧的令牌,或者如果它们无效,则返回新的令牌。请纠正我,如果我错了。

我试图在点击了延长会议每次都带给用户新的/刷新令牌。对于开发目的,我有一个按钮,然后显示与扩展会话按钮的消息。我打电话给getSession()时收到的代币是旧代币,但我希望它们成为新代币。

所以基本上,废除旧的会议,并给他们一个新的。

我的问题是:

  1. 我失去了约getSession()一定的了解,如前面提到的?
  2. 我可以给用户新会话令牌(Access,Id,Refresh)吗?
  3. 我可以在没有用户再次登录的情况下执行#2吗?

谢谢。

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

回答

4

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

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

查找名为checkTokenExpiration的方法,它解释得很清楚,你所要做的刷新会议的内容。

+1

我不相信我没有看到'refreshSession'方法。我会在接下来的几天看看它。谢谢。 –

+0

终于开始检查了。这是正确的答案。 –