Cognito中的用户ID



i使用AWS API Gateway AWS Cognito(联合身份 用户池)。我正在API网关中创建REST API。有一些方法可以获取用户列表和通过ID获取用户。我应该用作用户ID?

响应应包含以下用户数据:ID,用户名,名字,姓氏等。用户名,名称,姓氏存储在用户池属性中。

我在示例中看到他们使用cognitoidentityID作为用户ID。如果我将CognitoIdentityID用作ID,那么我应该如何通过此ID获取用户数据?请给我一个示例或链接到API参考如何通过CognitoIdentityId获取用户数据的链接。

您应该能够使用以下示例使用用户名来获取用户属性。

var AWS = require('aws-sdk');
AWS.config.region = 'us-east-1'; //This is required to derive the endpoint
var poolData = { UserPoolId : 'us-east-1_TcoKGbf7n',
    ClientId : '4pe2usejqcdmhi0a25jp4b5sh3'
};
var userPool = new AWS.CognitoIdentityServiceProvider.CognitoUserPool(poolData);
var userData = { 
                Username : 'username',
                Pool : userPool
            };
var cognitoUser = new AWS.CognitoIdentityServiceProvider.CognitoUser(userData);
cognitoUser.getUserAttributes(function(err, result) {
    if (err) {
        alert(err);
        return;
    }
    for (i = 0; i < result.length; i++) {
        console.log('attribute ' + result[i].getName() + ' has value ' + result[i].getValue());
    }
});

参考:示例:使用JavaScript SDK

如果您需要使用AccessToken查询用户属性,请使用以下示例。

var params = {
  AccessToken: 'STRING_VALUE' /* required */
};
cognitoidentityserviceprovider.getUser(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

参考:AWS JavaScript SDK Getuser

注意:当前AWS JavaScript SDK和API都没有支持用户属性。

获得用户属性。

相关内容

  • 没有找到相关文章

最新更新