1. 程式人生 > >JAVA呼叫中國網建介面實現傳送簡訊驗證碼

JAVA呼叫中國網建介面實現傳送簡訊驗證碼

import java.io.UnsupportedEncodingException;
import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;

public class SendMsg_webchinese {

public static void main(String[] args)throws Exception
{

HttpClient client = new HttpClient();
PostMethod post = new PostMethod("http://gbk.api.smschinese.cn"); post.addRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=gbk");//在標頭檔案中設定轉碼 NameValuePair[] data ={ new NameValuePair("Uid", "本站使用者名稱"),new NameValuePair("Key", "介面安全祕鑰"),new NameValuePair("smsMob","手機號碼"),new NameValuePair("smsText"
,"驗證碼:8888")}; post.setRequestBody(data); client.executeMethod(post); Header[] headers = post.getResponseHeaders(); int statusCode = post.getStatusCode(); System.out.println("statusCode:"+statusCode); for(Header h : headers) { System.out.println(h.toString()); } String result = new String(post.getResponseBodyAsString
().getBytes("gbk")); System.out.println(result); //列印返回訊息狀態 post.releaseConnection(); } }

jar包下載

commons-logging-1.1.1.jar
commons-httpclient-3.1.jar
commons-codec-1.4.jar

說明:如果返回值是200,應該是整段程式程式碼沒有執行完整,只獲取到client.executeMethod(post)HTTP狀態碼的訊息;介面是提交成功,沒有執行下半部的返回訊息程式碼。
client.executeMethod(post);HTTP狀態碼參考:http://baike.baidu.com/view/1790469.html