【问题标题】:Move user Table aws cognito to MongoDB将用户表 aws cognito 移动到 MongoDB
【发布时间】:2021-01-13 16:04:00
【问题描述】:

我了解了 aws cognito 和 lambda。通常,aws cognito 将它们的数据存储到 aws dynamoDB。但是,在我的项目中,我使用 mongoDB。那么,如何将数据从 aws cognito 存储到 mongoDB?

【问题讨论】:

    标签: node.js mongodb express amazon-cognito serverless


    【解决方案1】:

    如果您想将现有数据从 AWS Cognito 存储到 MongoDB,您可以使用AWS SDK

    npm i aws-sdk

    import AWS from 'aws-sdk'
    
    const cognitoidentityserviceprovider = new AWS.CognitoIdentityServiceProvider();
    const params = {
      UserPoolId: 'STRING_VALUE', /* required */
      AttributesToGet: [
        'STRING_VALUE',
        /* more items */
      ],
      Filter: 'STRING_VALUE',
      Limit: 'NUMBER_VALUE',
      PaginationToken: 'STRING_VALUE'
    };
    cognitoidentityserviceprovider.listUsers(params, function(err, data) {
      if (err) console.log(err, err.stack); // an error occurred
      else     console.log(data);           // successful response
    });
    

    获取用户后,将用户列表存入MongoDB。

    这个功能有分页。最大限制是 60(如果我没记错的话)。因此,如果您有超过 60 个用户,您将创建一个递归函数来获取所有用户。 更多信息请查看AWS CognitoDocumentation

    未来,如果你将用户存储到 Cognito,从结果中获取 Cognito 用户名和 Cognito 子,并将附加这些属性的用户数据存储到 MongoDB,会更好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-09
      • 2021-04-16
      • 2019-08-02
      • 2018-09-08
      • 2017-05-11
      • 1970-01-01
      • 2018-03-08
      • 2015-12-16
      相关资源
      最近更新 更多