当前位置:主页 > 软件编程 > JAVA代码 >

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();
          }
     }
}

总结

您可能感兴趣的文章:

相关文章