在React Web应用程序中列出Cognito用户

时间:2018-08-15 18:27:43

标签: reactjs aws-cognito

这是我的第一个cognito项目。我正在制作一个管理页面,该页面将具有对所有Cognito用户及其属性的只读访问权限。我已经看过aws-amplify和aws-amplify-react,无法弄清楚如何让它们访问ListUsers函数或类似的东西。有没有人有一个如何在React中做到这一点的例子。

我正在考虑将用户数据保存在另一个可以轻松访问的Dynamodb表中。我也想知道哪个便宜?在Cognito或Dynamodb中读取/写入用户属性?在Cognito中,我只能找到有关活动用户数量的文档,而对属性读取/写入的频率却找不到。

1 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,但最终要做的是为此创建一个lambda函数,并使用SDK来访问此信息。您可以通过mobilehub CLI创建一个API端点,然后根据您选择的所需get请求在本地express项目中编辑它创建的lambda,并输入以下内容:

var cognito = require('aws-sdk/clients/cognitoidentityserviceprovider');    

app.get('/users', function(req, res) {
    let params = {
        UserPoolId: userPoolIdHere,
        AttributesToGet: [
            'COGNITO_ATTRIBUTE_NAME',
            'COGNITO_ATTRIBUTE_NAME
        ];
    };

    cognito.listUsers(params, function(err, data) {
        if(err) {
            res.json(err);
        } else {
            res.json(data);
        }
    });
}