java发送短信至手机

 自主项目学习过程中,想添加一个验证码发送至手机的功能,问题是需要第三方提供的借口,好吧,天下没有什么好的免费午餐。同样脑疼的也适用于这里,先看看自己通过网络学习的东东:

    

package com.yc.mobile;
import java.io.IOException;
import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
 
public class SendMessage {
    /**
    * @author 牧羊的伯格女皇
    * @param args
    * @throws IOException 
    * @throws HttpException 
    */
    public static void main(String[] args) throws HttpException, IOException {
        HttpClient client = new HttpClient();
        PostMethod post = new PostMethod("http://gbk.sms.webchinese.cn"); 
        // 在头文件中设置转码
        post.addRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=gbk"); 
        NameValuePair[] data ={ 
            new NameValuePair("Uid", "*******"),  // 用户名
            new NameValuePair("Key", "*******"),  // Key使用的是密钥,而不是你登录账户的登录密码
            new NameValuePair("smsMob","*********"),  // 发送短息具体到手机的手机号码 
            new NameValuePair("smsText","手机内容,有一定的限制要求")
        };
        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();
   }
} 

// 当能看到返回的是  大于0  的时候, 就是成功了... ,且该数量就是你发送的短信数量

 

好了,需要注意的是别拿到代码就是复制粘贴还是需要通读下如何来使用,具体详情请点击下面,

链接地址: http://sms.webchinese.cn/api.shtml  

还需要在该链接地址上 下载需要的三个包文件,以及注册自己的一个小小的账号。  好了,不罗嗦了.............

 

你可能感兴趣的:(java发送短信至手机)