手机短信验证+javase实现http Web请求

手机短信验证,顾名思义就是要给手机发送一条信息,思路大概就是

1.和运营商直接接触达到这种需求

2.通过第三方SMS短信平台间接的和运营商接触达到这种需求

         在网上招了一些短信发送平台,发现了一个简单的(我不是做广告)中国网建:http://www.smschinese.cn/default.shtml


明确说明:这个是一个烧钱的业务。不过刚注册的用户有5条免费的短信。

注*第一次申请成功后使用,需要在【短信修改秘钥】中添加签名。

中国网建的SMS平台接口如下:





中国网建SMS平台短信发送后的响应接口说明如下:


接口以及说的反应信息说明已经很清楚。在次说说java的实现过程:

首先需要的jar包:

commons-codec-1.4.jar,commons-httpclient-3.1.jar,commons-logging-1.1.1.jar 

需要的加我qq:383264679 或者加我微信:maoxiandao_com 免费邮寄

package com.lgy.utils.phone;

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 SendMsg {
	public static void main(String[] args) 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=utf8");//在头文件中设置转码
		NameValuePair[] data ={ 
									new NameValuePair("Uid", "qq919571386"),
									new NameValuePair("Key", "3e4e0ffcc86f3c64682e"),
									new NameValuePair("smsMob","15820457505"),
									new NameValuePair("smsText","恭喜你,你怀孕了!")
							  };
		post.setRequestBody(data);

		client.executeMethod(post);
		Header[] headers = post.getResponseHeaders();
		NameValuePair[] parameters = post.getParameters();
		int statusCode = post.getStatusCode();
		
		System.out.println("statusCode:"+statusCode);
		
		for (NameValuePair nameValuePair : parameters) {
			System.out.println(nameValuePair.getName() + ":::" + nameValuePair.getValue());
		}
		for(Header h : headers) {
			System.out.println(h.toString());
		}
		
		String result = new String(post.getResponseBodyAsString().getBytes("utf8"));
		System.out.println(result); //打印返回消息状态


		post.releaseConnection();
	}
}

思路就是模拟javaee与http协议的交互,发送请求地址,请求头,请求信息,响应信息等。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值