基于创蓝253短信服务平台的Java调用短信接口API
package com.bcloud.msg.http;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.net.URLDecoder;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.URI;
import org.apache.commons.httpclient.methods.GetMethod;
/** * * @param url 应用地址,类似于http://ip:port/msg/ * @param account 账号 * @param pswd 密码 * @param mobile 手机号码,多个号码使用","分割 * @param msg 短信内容 * @param needstatus 是否需要状态报告,需要true,不需要false * @return 返回值定义参见HTTP协议文档 * @throws Exception */ public static String batchSend(String url, String account, String pswd, String mobile, String msg, boolean needstatus, String extno) throws Exception {
HttpClient client = new HttpClient();
GetMethod method = new GetMethod();
try {
URI base = new URI(url, false);
method.setURI(new URI(base, "HttpBatchSendSM", false));
method.setQueryString(new NameValuePair[] {
new NameValuePair("account", account), new NameValuePair("pswd", pswd), new NameValuePair("mobile", mobile), new NameValuePair("needstatus", String.valueOf(needstatus)), new NameValuePair("msg", msg), new NameValuePair("extno", extno), }
);
int result = client.executeMethod(method);
if (result == HttpStatus.SC_OK) {
InputStream in = method.getResponseBodyAsStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len = 0;
while ((len = in.read(buffer)) != -1) {
baos.write(buffer, 0, len);
}
return URLDecoder.decode(baos.toString(), "UTF-8");
}
else {
throw new Exception("HTTP ERROR Status: " + method.getStatusCode() + ":" + method.getStatusText());
}
}
finally {
method.releaseConnection();
}
}
}
总结
以上所述是小编给大家介绍的Java调取创蓝253短信验证码的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
- java短信验证码获取次数限制实例
- Java实现短信验证码和国际短信群发功能的示例
- JAVA实现利用第三方平台发送短信验证码
- 基于JAVA的短信验证码api调用代码实例
- Java随机生成手机短信验证码的方法