平台接入短信验证码,需要先获取APPID和APPKEY,然后需要引入一个JAR包。如果项目是maven项目的话直接把下面代码加到pom文件
<!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient -->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.2</version>
</dependency>
Jar包地址:http://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient/4.5.2
Java短信验证码接口代码如下
package SmsDemo;
import java.io.IOException;
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 MWH
*
*/
public class SendSms {
public static void main(String[] args) {
//发送验证码连接地址
String url="http://plat.veesing.com/smsApi/verifyCode";
//获取连接
HttpClient client = new HttpClient();
PostMethod method = new PostMethod(url);
//设置编码
client.getParams().setContentCharset("UTF-8");
method.setRequestHeader("ContentType","application/x-www-form-urlencoded;charset=utf-8");
String appId = "APPID";
String appKey = "APPKEY";
String phone = "手机号";
String templateId = "36";
String variables = "2345";
NameValuePair[] data = {
new NameValuePair("appId", appId),
new NameValuePair("appKey", appKey),
new NameValuePair("phone", phone),
new NameValuePair("templateId", templateId),//模板ID
new NameValuePair("variables", variables)};//变量
method.setRequestBody(data);
try {
client.executeMethod(method);
String result = method.getResponseBodyAsString();
System.out.println(result);
//返回结果需要解析XML
} catch (HttpException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
返回信息:
returnStatus | 返回状态 |
message | 返回信息 |
remainpoint | 返回余额 |
taskId | 任务ID |
successCounts | 成功条数 |
(Sentid) | (可忽略) |
返回状态码:(这个很重要)
4000 | 账号或密码错误 |
4005 | 参数错误 |
4006 | 模板不存在或者未审核通过 |
4007 | 参数与模板不匹配 |
4004 | 签名不合法 |
4001 | 账户余额不足 |
4002 | 确手机号码格式不正确 |
4003 | 手机号码今日发送次数已达上限 |
4010 | 相同手机号码一分钟之内只可发送一次 |
2000 | 发送成功 |
4008 | 未知原因,请联系客服 |
4010 | 账户被锁定 |
4200 | 未进行企业认证,只能发送系统默认模板 |
以上为短信验证码Java接口相关内容,不管是什么语言进行验证码的接入,短信平台的好与坏,会直接影响发送速度和短信到达率,导致对项目产生严重的影响。