您的位置:首页 > 编程语言 > Java开发

java发送手机短信

2013-03-05 11:54 183 查看
package com.lee.used;

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;
/**
* 通过sms.webchinese.cn ;  注册的用户名:,密码; 注册后可以查询短信密钥:
* @author Lee
*
*/
public class SendMessage {
/**
*
* @param username 用户名
* @param passKey 安全密匙
* @param telephoneNum 接收方电话号码
* @param messageBody 短信内容
* @throws HttpException
* @throws IOException
*/
public static void send(String username,String passKey,String telephoneNum,String messageBody) throws HttpException, IOException{
HttpClient client = new HttpClient();
PostMethod post = new PostMethod("http://utf8.sms.webchinese.cn");
post.addRequestHeader("Content-Type",
"application/x-www-form-urlencoded;charset=utf-8");// 在头文件中设置转码
NameValuePair[] data = { new NameValuePair("Uid", username),
new NameValuePair("Key", passKey),
new NameValuePair("smsMob", telephoneNum),
new NameValuePair("smsText", messageBody) };
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(): " + h.toString());
}
String result = new String(post.getResponseBodyAsString().getBytes(
"utf-8"));
System.out.println("result: " + result);
post.releaseConnection();
}

public static void main(String[] args) throws Exception {
String messageBody="短信测试成功!";
/***
* 第一个参数是注册的用户名
* 第二个是密钥(注册后自然会根据账户生成)
* 第三个是手机号
* 第四个是内容
*
*/
//		SendMessage.send("bas_ball", "liand1xxxxx", "1827488xxxx", messageBody);

/***
* 这是返回状态
* 返回1 表示只发送1条成功(发送几条成功返回几)
*
* -1 	没有该用户账户
-2 	密钥不正确 [查看密钥]
-3 	短信数量不足
-11 	该用户被禁用
-14 	短信内容出现非法字符
-4 	手机号格式不正确
-41 	手机号码为空
-42 	短信内容为空
大于0 	短信发送数量
*
*/
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", "bas_ball"),new NameValuePair("Key", "a503e1bb5cb3b25f1981"),new NameValuePair("smsMob","1326750xxxx"),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();

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: