1、接口使用介绍
发送短信肯定需要使用第三方接口,Java本身是肯定不能直接发送短信的。第三方接口有很多,这里直接找个正规靠谱一点的学习一下
这里使用了中国网建(http://sms.webchinese.cn/)
打开网址后,点击立刻注册体验
2、获取短信密钥
注册完成后,查看红色的短信秘钥。点击修改短信秘钥
这里记好短信秘钥,当然也可以修改短信秘钥
3、使用短信API接口
在左侧点击短信API接口,或者直接输入http://sms.webchinese.cn/api.shtml
出现如下界面:
在下方找到Java的示例程序
4、Java代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
package
com.fz.http;
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;
/**
* 类说明 :利用中国网建接口发送短信
* @author 作者:FangZheng
* @version 时间:2015-8-30 下午6:21:10
* 1、打开:http://sms.webchinese.cn/ 注册一个用户,默认用户是5条短信
* 2、打开api短信接口,找到修改短信秘钥菜单,找到自己的短信秘钥
* 3、使用api接口来发送短信,官方给的有java,php等各种语言的例子即可发送短信
*/
public
class
SendMsgTest {
public
static
void
main(
String
[] args) throws HttpException, IOException {
HttpClient client =
new
HttpClient();
post.addRequestHeader(
"Content-Type"
,
"application/x-www-form-urlencoded;charset=gbk"
);
//在头文件中设置转码
NameValuePair[] data ={
new
NameValuePair(
"Uid"
,
"zhangsan"
),
new
NameValuePair(
"Key"
,
"23825bbfbd73c539f05e"
),
new
NameValuePair(
"smsMob"
,
"1307*******"
),
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();
}
}
|
Java程序的运行依赖于3个jar包,在它的页面上直接点击下载即可。
最终程序运行成功,相应的手机号码上也收到了短信。