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

【基于创蓝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();

                   }



         }

}

猜你喜欢

转载自2880608198.iteye.com/blog/2414911