You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用amazon-cognito-identity-js的resendConfirmationCode成功却未收到短信

解决resendConfirmationCode返回成功但收不到短信的问题

你的代码逻辑没问题,结合注册时能正常收短信、SNS沙箱已验证手机号的情况,建议从以下几个方向排查:

  • 核对Cognito用户池的短信模板配置
    登录Cognito控制台,进入你的用户池,找到「消息自定义」→「短信」选项卡,检查验证用户场景的模板:

    • 确认模板已启用,内容包含{####}验证码占位符
    • 模板内容是否符合SNS短信规范(比如没有违规内容,长度在限制内)
      如果模板配置异常,可能导致Cognito返回成功但实际无法发送短信。
  • 查看CloudWatch中的发送日志
    进入CloudWatch控制台,找到对应Cognito用户池的日志组(路径通常是aws/cognito/idp/[你的用户池ID]),搜索与resendConfirmationCode或目标手机号相关的日志,查看是否有发送失败的具体错误提示(比如模板未审核、地区发送限制等)。

  • 确认用户当前状态
    只有状态为UNCONFIRMED的用户,重发验证码操作才会实际触发短信发送。可以通过Cognito控制台查看用户状态,或者调用getUser接口确认。如果用户已经是CONFIRMED或其他状态,接口会返回成功但不会发送短信。

  • 检查手机号格式一致性
    确认注册时提交的手机号格式(比如是否带国家码+86),与重发时username对应的用户手机号完全一致。Cognito对手机号格式匹配要求严格,格式不一致可能导致短信发送到错误的目的地。

  • 排查SNS沙箱的频率限制
    SNS沙箱模式下存在发送频率限制,短时间内多次请求可能被限流。尝试间隔5-10分钟后再重新发送,或者完成SNS账号的生产模式切换后测试。

内容的提问来源于stack exchange,提问作者Irfandy J.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 21:37:08