在AWS Cognito中,您可以使用以下代码示例重新发送验证链接给用户:
import boto3
def resend_verification_link(email):
client = boto3.client('cognito-idp', region_name='your_region')
# 获取用户池ID和应用客户端ID
user_pool_id = 'your_user_pool_id'
app_client_id = 'your_app_client_id'
try:
# 通过用户邮箱地址获取用户的用户名
response = client.list_users(
UserPoolId=user_pool_id,
AttributesToGet=['email'],
Filter=f"email='{email}'"
)
if 'Users' in response:
username = response['Users'][0]['Username']
# 重新发送验证链接给用户
response = client.admin_resend_confirmation_code(
UserPoolId=user_pool_id,
Username=username,
ClientId=app_client_id
)
print("Verification link has been resent successfully.")
else:
print("User not found.")
except client.exceptions.UserNotFoundException:
print("User not found.")
except Exception as e:
print("Error: {}".format(e))
请确保在代码中替换以下值:
your_region:您的AWS区域,例如'us-west-2'your_user_pool_id:您的用户池IDyour_app_client_id:您的应用客户端ID使用上述代码示例,您可以调用resend_verification_link函数,将用户的邮箱地址作为参数传递给它。函数将重新发送验证链接给用户,并在成功时打印出相应的消息。