你好,我公司使用阿里大于短信api发送提示短信。
分别有两个短信模板,都设置了2个变量。
经测试发现,其中一个短信模板,变量值超过20个字符短信发送就失败,提示参数异常,
另一个短信模板,变量值超过20个字符也能正常发送。
请问短信api在这方面是如何限制处理的,我在调用前该如何处理避免发送失败的情况出现。
{"error_response":{"code":15,"msg":"Remote service error","sub_code":"isv.INVALID_PARAMETERS","sub_msg":"参数异常","request_id":"rx6c8ebfcc06"}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
原因分析:
问题描述:您在使用阿里云大于短信API发送提示短信时,遇到一个模板的变量值超过20个字符便导致发送失败,错误提示为参数异常。而另一个模板即使变量值超过20个字符也能正常发送。
可能原因:根据短信服务规范,不同类型的短信模板对变量长度有不同的限制。自2018年01月10日后申请的通知类模板,变量限制为1至35个字符;而对于验证码类模板,变量限制通常为4至6个字符。您的情况可能是由于第一个模板属于对变量长度有严格限制的类型,而第二个模板则可能允许更长的变量值。
解决方案:
检查模板类型:首先,确认出现问题的短信模板具体类型,是否为通知类或验证码类。这将帮助您了解其对变量长度的具体要求。
调整变量内容:确保所有变量值均符合对应模板类型的长度限制。对于限制为最多20个字符的模板,需要将变量值缩短至规定范围内。
修改或申请新模板:如果当前业务需求中变量值必须超过20个字符,并且该模板为通知类,考虑修改现有模板内容以适应更长的变量(若规则允许),或者申请一个新的模板,明确说明需要更宽松的变量长度限制。
参数预处理:在调用API前,实施逻辑判断或数据处理,自动检查并裁剪变量值至允许的最大长度,以避免因长度超限导致的发送失败。
重要提示: - 遵守规范:务必遵循短信服务的模板规范和变量长度限制,以免影响短信发送成功率。 - 测试验证:在正式使用前,通过控制台或API进行充分的测试,确保修改后的模板及变量设置能够成功发送短信。
通过上述步骤,您可以有效避免因变量长度超限导致的短信发送失败问题。