结合身份验证服务器和资源服务器请求

问题描述 投票:0回答:1

目前,我的应用程序使用 API 请求发送到亚马逊 Cognito 服务器(身份验证服务器)来获取身份验证令牌,并且当应用程序初始化时,它会向亚马逊资源服务器发送 API 请求以获取一些用户详细信息。但我想结合这两个 API 调用并减少应用程序加载时的加载时间。

Cognito 服务器的 API 调用:

https://cognito-idp.us-west-1.amazonaws.com/
body:
{
   "AuthParameters" : {
      "USERNAME" : "...",
      "PASSWORD" : "..."
   },
   "AuthFlow" : "USER_PASSWORD_AUTH",
   "ClientId" : "..."
}

资源服务器API调用:

{{base_url}}/user/flag
with auth token

有没有可能的方法来结合以上两个请求?

amazon-web-services https amazon-cognito
1个回答
1
投票

检查ID令牌有效负载(声明)以存储/获取您需要的数据,它可以包含您在用户池中定义的自定义属性。来自文档:

  • ID 令牌包含有关其身份的声明,例如其用户 姓名、姓氏和电子邮件地址。
  • ID 令牌还可以包含您在用户池中定义的自定义属性。

您提到您只从其他资源获取一些用户详细信息。所以你应该考虑是否:

  1. 您想要将所需数据存储在认知声明(自定义或标准)中,或者,
  2. 您仍然希望将其存储在当前服务中,因为(例如)它是经常更改的数据

无论是有关限制的案例研究,您都可以从这里开始,特别注意自定义属性

对于第二种情况,您可以使用 lambda 触发器自定义用户池工作流程。实施 预令牌生成 Lambda,您可以在 Amazon Cognito 生成身份令牌之前自定义身份令牌。再次检查 lambda 触发器限制。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.