在调用阿里云短信发送时,需要设置审核通过的签名名称参数setSignName:
@Value("${aliyun.sms.template-code}")
private String templateCode;
SendSmsRequest request = new SendSmsRequest()
.setPhoneNumbers(phoneNumber)
.setSignName(templateCode)
因为签名名称是中文,配置到了application.properties中:
aliyun.sms.sign-name=叽里咕噜
在Service中读取,发现templateCode``获取到的却是乱码,导致接口访问失败,改成直接传入配置的字符串后,调用正常了,此处还需要后续排查原因,猜测是中文配置编码问题导致。
SendSmsRequest request = new SendSmsRequest()
.setPhoneNumbers(phoneNumber)
.setSignName("叽里咕噜")