目前,我的应用程序使用 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
有没有可能的方法来结合以上两个请求?
检查ID令牌有效负载(声明)以存储/获取您需要的数据,它可以包含您在用户池中定义的自定义属性。来自文档:
- ID 令牌包含有关其身份的声明,例如其用户 姓名、姓氏和电子邮件地址。
- ID 令牌还可以包含您在用户池中定义的自定义属性。
您提到您只从其他资源获取一些用户详细信息。所以你应该考虑是否:
无论是有关限制的案例研究,您都可以从这里开始,特别注意自定义属性。
对于第二种情况,您可以使用 lambda 触发器自定义用户池工作流程。实施 预令牌生成 Lambda,您可以在 Amazon Cognito 生成身份令牌之前自定义身份令牌。再次检查 lambda 触发器限制。