在使用 AWS Cognito 创建用户时,可以通过设置用户的状态为 CONFIRMED 来避免发送验证电子邮件。下面是一个使用 AWS SDK for JavaScript(例如 AWS SDK for Node.js)的示例代码:
const AWS = require('aws-sdk');
// 配置 AWS SDK
AWS.config.update({
region: 'us-west-2', // 根据你的实际需求修改
credentials: new AWS.Credentials('your-access-key', 'your-secret-access-key') // 根据你的实际需求修改
});
// 创建 CognitoIdentityServiceProvider 对象
const cognitoIdentityServiceProvider = new AWS.CognitoIdentityServiceProvider();
// 创建用户并设置状态为 CONFIRMED
const createUser = async () => {
const params = {
UserPoolId: 'your-user-pool-id', // 根据你的实际需求修改
Username: 'user1', // 根据你的实际需求修改
TemporaryPassword: 'temporary-password', // 根据你的实际需求修改
UserAttributes: [
{
Name: 'email',
Value: 'user1@example.com' // 根据你的实际需求修改
}
],
MessageAction: 'SUPPRESS', // 设置不发送验证电子邮件
DesiredDeliveryMediums: ['EMAIL'] // 根据你的实际需求修改
};
try {
const response = await cognitoIdentityServiceProvider.adminCreateUser(params).promise();
console.log('User created:', response);
} catch (error) {
console.error('Error creating user:', error);
}
};
createUser();
请根据你的实际需求修改代码中的参数,例如替换 your-user-pool-id
、your-access-key
、your-secret-access-key
、user1@example.com
等值。另外,确保你已经在 AWS 控制台中创建了相应的用户池(User Pool)并配置了相应的设置。
以上代码示例使用了异步函数来创建用户,因此需要使用 await
关键字来等待 Promise 的解析。如果你的项目环境不支持异步函数,你可以使用 .then()
和 .catch()
来处理 Promise 的解析和错误处理。
希望以上解决方法对你有所帮助!