发送短信返回值增加非空判断

This commit is contained in:
995608517@qq.com 2023-05-16 23:25:12 +08:00
parent 4ad4058a4a
commit 2d18f0832a
5 changed files with 41 additions and 17 deletions

View File

@ -112,6 +112,11 @@ public class AlibabaSmsImpl implements SmsBlend {
private static SmsResponse getResponse(Map map) { private static SmsResponse getResponse(Map map) {
SmsResponse smsResponse = new SmsResponse(); SmsResponse smsResponse = new SmsResponse();
if (map == null){
smsResponse.setErrorCode("500");
smsResponse.setErrMessage("aliyun send sms response is null.check param");
return smsResponse;
}
smsResponse.setCode((String) map.get("Code")); smsResponse.setCode((String) map.get("Code"));
smsResponse.setMessage((String) map.get("Message")); smsResponse.setMessage((String) map.get("Message"));
if ("OK".equals(smsResponse.getCode())){ if ("OK".equals(smsResponse.getCode())){

View File

@ -179,6 +179,11 @@ public class EmaySmsImpl implements SmsBlend {
private static SmsResponse getSmsResponse(JSONObject execute) { private static SmsResponse getSmsResponse(JSONObject execute) {
SmsResponse smsResponse = new SmsResponse(); SmsResponse smsResponse = new SmsResponse();
if (execute == null ){
smsResponse.setErrorCode("500");
smsResponse.setErrMessage("emay send sms response is null.check param");
return smsResponse;
}
String code = execute.getString("code"); String code = execute.getString("code");
if (StringUtils.isEmpty(code)) { if (StringUtils.isEmpty(code)) {
smsResponse.setErrorCode("emay response code is null"); smsResponse.setErrorCode("emay response code is null");

View File

@ -40,9 +40,9 @@ public class HuaweiSmsImpl implements SmsBlend {
@Override @Override
@Restricted @Restricted
public SmsResponse sendMessage(String phone, String message) { public SmsResponse sendMessage(String phone, String message) {
LinkedHashMap<String,String> mes = new LinkedHashMap<>(); LinkedHashMap<String, String> mes = new LinkedHashMap<>();
mes.put(UUID.randomUUID().toString().replaceAll("-",""),message); mes.put(UUID.randomUUID().toString().replaceAll("-", ""), message);
return sendMessage(phone,config.getTemplateId(),mes); return sendMessage(phone, config.getTemplateId(), mes);
} }
@Override @Override
@ -55,26 +55,30 @@ public class HuaweiSmsImpl implements SmsBlend {
} }
String mess = listToString(list); String mess = listToString(list);
String requestBody = HuaweiBuilder.buildRequestBody(config.getSender(), phone, templateId, mess, config.getStatusCallBack(), config.getSignature()); String requestBody = HuaweiBuilder.buildRequestBody(config.getSender(), phone, templateId, mess, config.getStatusCallBack(), config.getSignature());
Map<String,String> headers = new LinkedHashMap<>(); Map<String, String> headers = new LinkedHashMap<>();
headers.put("Authorization",Constant.HUAWEI_AUTH_HEADER_VALUE); headers.put("Authorization", Constant.HUAWEI_AUTH_HEADER_VALUE);
headers.put("X-WSSE",HuaweiBuilder.buildWsseHeader(config.getAppKey(), config.getAppSecret())); headers.put("X-WSSE", HuaweiBuilder.buildWsseHeader(config.getAppKey(), config.getAppSecret()));
headers.put("Content-Type",Constant.FROM_URLENCODED); headers.put("Content-Type", Constant.FROM_URLENCODED);
SmsResponse smsResponse = new SmsResponse(); SmsResponse smsResponse = new SmsResponse();
http.post(url) http.post(url)
.addHeader(headers) .addHeader(headers)
.addBody(requestBody) .addBody(requestBody)
.onSuccess(((data,req,res)->{ .onSuccess(((data, req, res) -> {
HuaweiResponse jsonBody = res.get(HuaweiResponse.class); HuaweiResponse jsonBody = res.get(HuaweiResponse.class);
smsResponse.setCode(jsonBody.getCode()); smsResponse.setCode(jsonBody.getCode());
smsResponse.setMessage(jsonBody.getDescription()); smsResponse.setMessage(jsonBody.getDescription());
smsResponse.setBizId(jsonBody.getResult().get(0).getSmsMsgId()); smsResponse.setBizId(jsonBody.getResult().get(0).getSmsMsgId());
smsResponse.setData(jsonBody.getResult()); smsResponse.setData(jsonBody.getResult());
})) }))
.onError((ex,req,res)->{ .onError((ex, req, res) -> {
HuaweiResponse huaweiResponse = res.get(HuaweiResponse.class); HuaweiResponse huaweiResponse = res.get(HuaweiResponse.class);
smsResponse.setErrMessage(huaweiResponse.getDescription()); if (huaweiResponse == null) {
smsResponse.setErrorCode(huaweiResponse.getCode()); smsResponse.setErrorCode("500");
log.debug(huaweiResponse.getDescription()); smsResponse.setErrMessage("huawei send sms response is null.check param");
} else {
smsResponse.setErrMessage(huaweiResponse.getDescription());
smsResponse.setErrorCode(huaweiResponse.getCode());
}
}) })
.execute(); .execute();
return smsResponse; return smsResponse;
@ -83,7 +87,7 @@ public class HuaweiSmsImpl implements SmsBlend {
@Override @Override
@Restricted @Restricted
public SmsResponse massTexting(List<String> phones, String message) { public SmsResponse massTexting(List<String> phones, String message) {
return sendMessage(listToString(phones),message); return sendMessage(listToString(phones), message);
} }
@Override @Override

View File

@ -108,10 +108,15 @@ public class TencentSmsImpl implements SmsBlend {
})) }))
.onError((ex, req, res) -> { .onError((ex, req, res) -> {
JSONObject jsonBody = res.get(JSONObject.class); JSONObject jsonBody = res.get(JSONObject.class);
JSONObject response = jsonBody.getJSONObject("Response"); if (jsonBody == null) {
JSONArray sendStatusSet = response.getJSONArray("SendStatusSet"); smsResponse.setErrorCode("500");
smsResponse.setErrMessage(sendStatusSet.getJSONObject(0).getString("Message")); smsResponse.setErrMessage("tencent send sms response is null.check param");
smsResponse.setErrorCode(sendStatusSet.getJSONObject(0).getString("Code")); } else {
JSONObject response = jsonBody.getJSONObject("Response");
JSONArray sendStatusSet = response.getJSONArray("SendStatusSet");
smsResponse.setErrMessage(sendStatusSet.getJSONObject(0).getString("Message"));
smsResponse.setErrorCode(sendStatusSet.getJSONObject(0).getString("Code"));
}
}) })
.execute(); .execute();
return smsResponse; return smsResponse;

View File

@ -37,6 +37,11 @@ public class YunPianSmsImpl implements SmsBlend {
private static SmsResponse getSmsResponse(JSONObject execute) { private static SmsResponse getSmsResponse(JSONObject execute) {
SmsResponse smsResponse = new SmsResponse(); SmsResponse smsResponse = new SmsResponse();
if (execute == null){
smsResponse.setErrorCode("500");
smsResponse.setErrMessage("yunpian send sms response is null.check param");
return smsResponse;
}
smsResponse.setCode(execute.getString("code")); smsResponse.setCode(execute.getString("code"));
smsResponse.setMessage(execute.getString("msg")); smsResponse.setMessage(execute.getString("msg"));
smsResponse.setBizId(execute.getString("sid")); smsResponse.setBizId(execute.getString("sid"));