6

我已经用 Cognito 试验了几天,现在我正在测试内置签名 UI。我已经设法让它工作,我能够看到登录页面并使用我创建的用户成功登录。对于我的回调 URL,我使用 localhost:3000 作为测试场,我正在运行 React SPA。

但是,一旦我被重定向,我完全不知道该怎么做。文档说我应该得到一个带有 JWT 作为查询参数的 URL。相反,我得到了以下形式的 URL:

localhost:3000/?code=########-####-####-####-############

其中#是一个字母数字字符。我不认识这段代码,我不认为它是 JWT。我非常感谢任何人都可以:

  1. 解释它是什么
  2. 指导我查看有关如何使用它的任何类型的文档?
4

1 回答 1

11

重定向后,你得到localhost:3000/?code=########-####-####-####-############

这意味着您已启用代码授权流程

此代码用于从 Amazon Cognito 获取令牌。

请求类型:POST

网址https ://mydomain.auth.us-east-1.amazoncognito.com/oauth2/token

有效载荷grant_type=authorization_code& client_id=<CLIENT_ID>& code=<AUTHORIZATION_CODE>& redirect_uri=com.myclientapp://myclient/redirect

在这里,您可以看到我们正在code使用重定向 url 传递有效负载。

此 POST 请求的响应将是您的令牌(如果身份验证成功:))

示例响应:

{
 "access_token":"eyJz9sdfsdfsdfsd",
 "refresh_token":"dn43ud8uj32nk2je",
 "id_token":"dmcxd329ujdmkemkd349r",
 "token_type":"Bearer", 
 "expires_in":3600
}

您可以将此令牌保存在本地存储或会话存储中以进行进一步的自定义身份验证。

有关更多详细信息,请参阅 amazon cognito 的所有可用端点。

例如: 授权端点 令牌端点

我希望现在它让你明白了!

于 2018-07-25T08:17:32.747 回答