在 AWS Cognito 中添加自定义属性,可以使用 AWS SDK 来完成。下面是一个使用 AWS SDK for JavaScript (Node.js) 的代码示例:
const AWS = require('aws-sdk');
AWS.config.update({ region: 'your_region' });
const cognitoIdentityServiceProvider = new AWS.CognitoIdentityServiceProvider();
const userPoolId = 'your_user_pool_id';
const clientId = 'your_client_id';
const username = 'your_username';
const customAttributes = {
'custom:attribute1': 'value1',
'custom:attribute2': 'value2'
};
const params = {
UserAttributes: Object.entries(customAttributes).map(([Name, Value]) => ({ Name, Value })),
UserPoolId: userPoolId,
Username: username
};
cognitoIdentityServiceProvider.adminUpdateUserAttributes(params, (err, data) => {
if (err) {
console.log('Error:', err);
} else {
console.log('Successfully updated user attributes:', data);
}
});
请替换以下值:
your_region
:AWS 区域(例如,'us-east-1')your_user_pool_id
:用户池 IDyour_client_id
:客户端 IDyour_username
:用户的用户名custom:attribute1
和 custom:attribute2
:自定义属性的名称和值在代码中,我们首先需要配置 AWS SDK 的区域。然后,我们创建一个 CognitoIdentityServiceProvider
的实例,用于与 Cognito 用户池进行交互。
接下来,我们定义自定义属性的名称和值,并将其放入 UserAttributes
数组中。然后,我们使用 adminUpdateUserAttributes
方法来更新用户的属性。
最后,根据操作的结果,我们可以在回调函数中处理成功或失败的情况。
请确保已安装 AWS SDK for JavaScript (Node.js) 并正确配置 AWS 访问凭证,以便与 Cognito 进行交互。