接入手机验证码的实现需要第三方平台提供的接口
这里我使用的是 美圣 的,这种平台有很多,大家自行选择,比如网易云,容联等等,都有免费的短信数量以供测试,接口不一样,实现的方式大同小异
下面是我实现的代码片,供参考
这是一个测试类
基于http
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/**
* @ClassName: ApiDemo
* @Description: TODO
*
*/
public class ApiDemo4Java {
/**
* 短信提供商开设账号时提供一下参数:
*
* 账号、密码、通信key、IP、端口
*/
static String account = "你的账号";
static String password = "你的密码";
static String veryCode = "通信key";
static String http_url = "IP和端口";
public static String vcode = createRandomVcode();
/**
* 默认字符编码集
*/
public static final String CHARSET_UTF8 = "UTF-8";
public static String createRandomVcode(){
//验证码
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < 4; i++) {
buffer.append((int)(Math.random() * 9));
}
return buffer.toString();
}
/**
* 查询账号余额
* @return 账号余额,乘以10为短信条数
* String xml字符串,格式请参考文档说明
*/
public static String