由於leancloud提供了一套手機短信驗證,因此通過leancloud發送驗證
1.注冊leancloud賬號,創建對應java項目的leancloud項目,獲得應用的appID,appKey(手下留情,別復制我的哈)
2.於html頁面或者jsp頁面加入對應的js
<script src="https://leancloud.cn/scripts/lib/av-0.5.1.min.js"></script>
<script src="js/common/jquery.js" type="text/javascript"></script>(解析jquery)
以上皆為准備,以下為重點。。。
3.html頁面(別問我,懷疑你的智商)
<input maxlength="200" id="mobile" name="mobile" dataType="mobile" autocomplete="off">
<button onclick="sendCode()">發送激活碼</button>
<input maxlength="200" id="tel_code" name="tel_code" autocomplete="off">
<span id="msg_code" style="color:red;">(發送驗證后十分鍾可再次發送)</span>
4.對應的js
(1)將leancloud注冊的項目獲得的appId,appKey初始化進入web項目
AV.initialize("x8c1c6z8pe1nfp02qdfsjg992kpr2nvk2hwy3birx3ff4o27", "l67mh8v8tjsm16gu8pwlchpkqb2d1hmd80gt11zcwwa14lqv");//別比較之上的,這是兩個項目
(2)發送驗證碼
AV.Cloud.requestSmsCode(tel).then(function(){
//發送成功
$("#msg_code").html("驗證碼已發送,請輸入驗證碼");
}, function(err){
alert(err.message);
//發送失敗
$("#msg_code").html("發送失敗,請檢查手機號");
});
(3)驗證,在這兒我用的是移除焦點后驗證
var telcode=$("#tel_code").val();
var tel=$("#mobile").val();
AV.Cloud.verifySmsCode("獲得的手機驗證碼", "對應輸入的手機號").then(function(){
//驗證成功
$("#msg_code").html("手機驗證碼正確!");
}, function(err){
//驗證失敗
$("#tel_code").val("");
$("#msg_code").html("手機驗證碼錯誤!");
});
備注:
以上短信驗證使用leancloud原生提供的驗證機制,驗證時間間隔10分鍾,api提供了可制定短信模板,短信時間。
leancloud地址:https://leancloud.cn/customers.html
