[榛子云短信的官网]http://smsow.zhenzikj.com/doc/java_sdk_doc.html)
- 根据提示,下载jar包或者添加maven依赖
- 注册一个账号,然后在我的应用可以看到自己的AppID和AppSecret
- 然后就可以用啦
package verify;
import java.util.HashMap;
import java.util.Random;
import com.zhenzi.sms.ZhenziSmsClient;
public class SendVarifyCode {
// @Test
// public void a() {
// SendVarifyCode sendVarifyCode = new SendVarifyCode();
// sendVarifyCode.send();
// }
public String send(String telCode) {
String apiUrl = "https://sms_developer.zhenzikj.com";
String appId = "你的应用名";
String appSecret = "你的密钥";
ZhenziSmsClient client = new ZhenziSmsClient(apiUrl, appId, appSecret);
HashMap<String, String> params = new HashMap<>();
String code = getVerifyCode();
System.out.println(code);
params.put("message", "验证码为: " + code);
params.put("number", telCode);
System.out.println(telCode);
try {
String result = client.send(params);
//在控制台打印短信发送的结果(手机号是否正确,是否发送成功)
System.out.println(result);
//返回验证码以便后来验证
return code;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("还是失败了");
return "失败啦";
}
}
//产生四位数的手机验证码
private static String getVerifyCode() {
String ch = "1234567890";
String result = "";
Random random = new Random();
for (int i = 0; i < 4; i++) {
int index = random.nextInt(ch.length());
char c = ch.charAt(index);
result += c;
}
return result;
}
}
在html中使用,我使用的dwr调用Java类在客户端进行
var code;
var message;
function sendMessage(){
var telCode=document.getElementById("recipientphone").value;
alert("已发送验证码,请查收,您的手机号为"+telCode);
sendVarifyCode.send(telCode,callback);
}
function callback(data){
//alert(data);
code=data;
}
function check(){
message=document.getElementById("message").value;
if(code==message){
alert("验证码输入正确即将跳转");
return true;
}
else{
alert("验证码错误");
return false;
}
}
然后就可以收到短信啦,这个也是收费的,不过它好便宜的,0.037一条哈哈哈