AWS使用react放大谷歌登录1小时后不会自动刷新令牌?

Har*_*and 6 single-sign-on node.js reactjs amazon-cognito aws-amplify

使用隐式授权流程(使用 Auth.oauth.responseType = 'token' 配置的 Amplify),从 Cognito 托管 UI 重定向后,正确填充 idToken 和 accessToken,refreshToken 保持为空 - 正如它应该的那样:

在此输入图像描述

如果您在 React 应用程序上提供了该代码片段,则会发生自动刷新令牌。该库需要在不添加刷新处理程序回调的情况下刷新令牌。这是文档所说的,但它不起作用。

有人可以帮助我如何刷新用户的令牌吗AWS Amplify

sch*_*ack 3

没有要刷新的刷新令牌,因为您使用的是隐式授予类型而不是授权代码授予类型。将授予类型从 更改tokencode,然后您将在调试日志中看到刷新令牌。

根据AWS 移动博客

隐式授予不会生成刷新令牌

将您传递给的身份验证选项更改Amplify.configure为如下所示:

Amplify.configure({
  Auth: {
    // other configurations...
    // ...
    oauth: {
      // ...
      responseType = 'code'
    }
    // ...
  }
});
Run Code Online (Sandbox Code Playgroud)