Java调取创蓝253短信验证码的实现代码
时间:2020-11-14 11:35:31|栏目:JAVA代码|点击: 次
基于创蓝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();
}
}
}
总结
上一篇:springmvc后台基于@ModelAttribute获取表单提交的数据
栏 目:JAVA代码
下一篇:java中volatile和synchronized的区别与联系
本文地址:http://www.codeinn.net/misctech/22336.html


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




