这是个存在一个bug(自己去发现哈哈,不安全)的短信验证接口,调用第三方的平台,原理就是你这边随机生成一个六位字符串,字符串放到人家的平台上,让人家帮你通过短信的方式发送到指定的人的手机号上,开始。
1.前期准备
(1)jar包 我用的是maven管理jar包,所以这里放上依赖的代码
<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> </dependency> <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20160810</version> </dependency>
两个包 用来解析json用的 用到了ajax
(2)第三方平台的账号申请,这里我使用的首次申请就送200条的秒嘀(给你们推荐)
申请后会在个人控制中心看到自己的密钥之类的东西(
ACCOUNT_SID
AUTH_TOKEN
)
这两个东西是需要保存的
2.工具类(向第三方发送请求的方法)
GetMessageCode.java
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.json.JSONObject;
public class GetMessageCode {
private static final String QUERY_PATH="https://api.miaodiyun.com/20150822/industrySMS/sendSMS";
private static final String ACCOUNT_SID="";//我写的很清楚这两条填写你们的就行了
private static final String AUTH_TOKEN="";
public static String getCode(String phone){
String rod=smsCode();
String timestamp=