利用java實現的一個發送手機短信的小例子

JAVA發送手機短信,流傳有幾種方法:
(1)使用webservice接口發送手機短信,這個可以使用sina提供的webservice進行發送,但是需要進行註冊;
(2)使用短信mao的方式進行短信的發送,這種方式應該是比較的常用,前提是需要購買硬件設備
(3)使用中國網建提供的SMS短信平臺(申請賬號地址:http://web.daiyicloud.com/
本程序主要是運用了中國網建提供的SMS短信平臺,這個短信平臺基於java提供個專門的接口,注意在使用一下程序之前需要在sms官網註冊賬號(需要賬號很接口祕鑰)

1. jar包下載
commons-logging-1.1.1.jar
commons-httpclient-3.1.jar
commons-codec-1.4.jar

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 Senddx {
    public static void main(String[] args) throws Exception {
        HttpClient client = new HttpClient();
        PostMethod post = new PostMethod("http://api.daiyicloud.com/asmx/smsservice.aspx");
        post.addRequestHeader("Content-Type",
                "application/x-www-form-urlencoded;charset=gbk");// 在頭文件中設置轉碼
        NameValuePair[] data = { 
                new NameValuePair("name", "kekeair"),//賬戶名稱
                new NameValuePair("pwd", "D728538373ED125DD6683D632ED2"),//接口祕鑰,針對每一個註冊用戶的密碼生成
                new NameValuePair("mobile", "18613846014"),//要發送的手機號,多人時使用","隔開
                new NameValuePair("sign", "kekeair"),//用戶簽名
                new NameValuePair("type", "pt"),//發送類型,固定值"pt"
                new NameValuePair("content", "kekeair") //發送內容
                };
        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();

    }
}

注:上面的用戶名和密碼是我原先申請的,不知道爲什麼被停用了,在運行本程序之前請先到SMS短信平臺去申請一個用戶名和密碼。

短信發送後返回值 說 明
-1 沒有該用戶賬戶
-2 密鑰不正確(不是用戶密碼)
-3 短信數量不足
-11 該用戶被禁用
-14 短信內容出現非法字符
-41 手機號碼爲空
-42 短信內容爲空
大於0 短信發送數量


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章