自主项目学习过程中,想添加一个验证码发送至手机的功能,问题是需要第三方提供的借口,好吧,天下没有什么好的免费午餐。同样脑疼的也适用于这里,先看看自己通过网络学习的东东:
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 的时候, 就是成功了... ,且该数量就是你发送的短信数量
好了,需要注意的是别拿到代码就是复制粘贴还是需要通读下如何来使用,具体详情请点击下面,
链接地址:
还需要在该链接地址上 下载需要的三个包文件,以及注册自己的一个小小的账号。 好了,不罗嗦了.............