我最近开始尝试使用 AWS AppSync,但对 AWS Cognito 有一些疑问。
我希望用户能够通过 Facebook 进行身份验证,但我需要他们的个人资料图片、姓名和电子邮件作为我的应用程序中的公共(public)用户个人资料的数据。到目前为止,我注意到 Cognito 与 Facebook Auth 集成,但它不允许访问用户信息,并且此信息不会保存在 DynamoDB 表中。
我的问题是,当 Cognito 收到新登录时,如何在 DynamoDB 中创建新用户,或者当用户已存在于数据库中时如何返回现有用户/ID。
最佳答案
几周前我就试图实现同样的目标。
在阅读了几个小时的文档后,我意识到 Cognito 可能无法帮助我们了解从 FB 返回的数据或如何保存它。
我最终做了以下事情:
(1)使用FB-SDK,拉取用户数据。
(2) 调用 Lambda 函数将该数据(如 FB_id 等)保存到 DynamoDB。
(3) 如果用户再次登录,他们的 FB_id(或电子邮件)将用于检查 DynamoDB 条目以检索其数据。
如果 Cognito 能够帮助我们而我不知何故错过了它,我很想知道。
祝你编码愉快!
关于amazon-web-services - 在 DynamoDB 中保存 AWS Cognito 用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47868329/