Twilio试用账户已验证手机号仍无法发SMS,报400错误
解决方案与问题解答
关于Extension的疑问
Extension不是国家代码,它指的是电话分机号,用于企业内部电话系统转接,和国家代码(比如你的号码前缀+94是斯里兰卡的国家代码)没有关系。
核心问题解决办法
你的报错明确指向试用账户的限制:Trial accounts cannot send messages to unverified numbers,以下是可行的解决路径:
1. 解决验证号码收不到OTP的问题
- 严格按照国际格式输入号码:确保号码是
+947XXXXXXXX这种完整格式,不要添加空格、括号、分机号或其他符号 - 切换验证方式:在添加Verified Caller ID时,选择语音电话验证替代短信OTP,部分地区语音验证的成功率更高
- 排查运营商拦截:部分高风险地区的运营商会拦截国际来源的短信/电话,尝试更换其他运营商的手机号,或者使用亲友的号码进行验证
- 直接联系Twilio支持:提交支持工单,说明你是学习用途,当前无法接收验证OTP的情况,提供你的账户信息和号码,请求人工协助完成验证
2. 无需验证号码的替代测试方案
如果暂时无法完成号码验证,可以用Twilio的测试资源做开发测试:
- 使用Twilio的测试凭证(Test Credentials):在控制台的"API Keys & Tokens"里找到测试用的Account SID和Auth Token,配合Twilio提供的测试发送号码和测试接收号码(控制台内有相关说明),可以模拟发送短信的流程,无需验证自己的号码
- 确认Geo权限状态:再次检查控制台"Phone Numbers" > "Geo Permissions"中,斯里兰卡(Sri Lanka)的SMS权限是否确实已开启,确保没有被误关闭
内容的提问来源于stack exchange,提问作者guitarlass
相关产品推荐
相关产品推荐

