您的位置:首页 > 编程语言 > Java开发

Java获取短信验证码接口调用demo

2018-03-20 15:45 357 查看
【基于创蓝253云通讯平台的接口调用demo,其他平台的可以参考修改】

package com.bcloud.msg.http;
 
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.net.URLDecoder;
 
importorg.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpStatus;
importorg.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.URI;
importorg.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
          */
         publicstatic String batchSend(String url, String account, String pswd, String mobile,String msg,
                            booleanneedstatus, String extno) throws Exception {
                   HttpClientclient = new HttpClient();
                   GetMethodmethod = new GetMethod();
                   try{
                            URIbase = new URI(url, false);
                            method.setURI(newURI(base, "HttpBatchSendSM", false));
                            method.setQueryString(newNameValuePair[] {
                                               newNameValuePair("account", account),
                                               newNameValuePair("pswd", pswd),
                                               newNameValuePair("mobile", mobile),
                                               newNameValuePair("needstatus", String.valueOf(needstatus)),
                                               newNameValuePair("msg", msg),
                                               newNameValuePair("extno", extno),
                                     });
                            intresult = client.executeMethod(method);
                            if(result == HttpStatus.SC_OK) {
                                     InputStreamin = method.getResponseBodyAsStream();
                                     ByteArrayOutputStreambaos = new ByteArrayOutputStream();
                                     byte[]buffer = new byte[1024];
                                     intlen = 0;
                                     while((len = in.read(buffer)) != -1) {
                                               baos.write(buffer,0, len);
                                     }
                                     returnURLDecoder.decode(baos.toString(), "UTF-8");
                            }else {
                                     thrownew Exception("HTTP ERROR Status: " + method.getStatusCode() +":" + method.getStatusText());
                            }
                   }finally {
                            method.releaseConnection();
                   }
 
         }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息