真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java實現(xiàn)手機短信驗證的基本思路

本文實例為大家分享了java實現(xiàn)手機短信驗證的具體代碼,供大家參考,具體內(nèi)容如下

成都創(chuàng)新互聯(lián)專注于網(wǎng)站建設|成都網(wǎng)站維護|優(yōu)化|托管以及網(wǎng)絡推廣,積累了大量的網(wǎng)站設計與制作經(jīng)驗,為許多企業(yè)提供了網(wǎng)站定制設計服務,案例作品覆蓋成都酒店設計等行業(yè)。能根據(jù)企業(yè)所處的行業(yè)與銷售的產(chǎn)品,結(jié)合品牌形象的塑造,量身建設品質(zhì)網(wǎng)站。

整體流程:

  1. 客戶填入手機號,通過客戶端點擊獲取驗證碼按鈕,驗證手機號是否有效,有效則客戶端發(fā)送請求到后臺服務器,客戶端開始倒計時60s,不通過則返回;
  2. 服務器,驗證手機號是否被注冊或有效,通過則調(diào)用第三方的短信通信接口并發(fā)送相關數(shù)據(jù)(包括手機號和驗證碼),然后回調(diào)結(jié)果,成功則將驗證碼存入session,失敗則返回提示,不通過則返回。
  3. 客戶收到驗證碼后在有效時間內(nèi),填入并發(fā)送請求。
  4. 服務器端,收到請求后,用戶發(fā)送過來的驗證碼和事前放入session的驗證碼做對比,相同通過,否則提示驗證碼無效。

通過后,需要將session中的驗證碼無效化,一般就是置為空。

第一步偽代碼:

function sendCaptcha(tel) {  

    console.log("sendCaptcha: tel = " + tel);  

    $.ajax({  

      type: 'post',  

      url: '/sms/captcha/' + tel,  

      dataType: "json",  

      success: function (data) {  

        console.log("sendCaptcha ==> success: data = " + eval(data));  

        if (data) {  

          countdown();  

          b_code = false;  

        } else {  

          alert("您發(fā)送的頻率過快!");  

        }  

      },  

      error: function (data) {  

        console.log("sendCaptcha ==> error: data = " + eval(data));  

        alert("網(wǎng)絡超時");  

        clearTimeout(t);  

        b_code = true;  

        var msg = "獲取驗證碼";  

        $("#code").text(msg);  

        c = 60;  

      }  

    });  

  }  

第二步偽代碼:

@RequestMapping(value = "captcha/{recPhoneNum}", method = RequestMethod.POST)  

  public Object getSmsCaptcha(ModelMap model, @PathVariable("recPhoneNum")String recPhoneNum) {  

    String responseBody = null;  


    /* 這里驗證手機號是否被注冊 */


   // 生成驗證碼

    String captcha = Generator.generateCaptcha();  


   // 第三方短信通信接口參數(shù)設置

   req.setReceive(recPhoneNum);

    try {  

     // 發(fā)送請求

      responseBody = req.send();

     // 將驗證碼放入session

      model.addAttribute("captcha", captcha);  

     // 得到結(jié)果

      responseBody = rsp.getBody();  

      log.debug("getSmsCaptcha: responseBody = " + responseBody);  

      if (rsp.getResult() != null) {  

        model.addAttribute("success_response", rsp.getResult());  

      } else {  

        model.addAttribute("error_response", rsp.getSubMsg());  

      }  

    } catch (ApiException e) {  

      log.error("getSmsCaptcha :" + e.getErrMsg());  

    }  

    // 解析結(jié)果

    if (successJson != null) {  

      successJson = successJson.getJSONObject("result");  

      return successJson.getBoolean("success");  

    } else {  

      return false;  

    }  

  }  

最后一步偽代碼:

// 從session取出驗證碼
String captcha = session.getAttribute("captcha");
// 比較
if (reqCaptcha.equals(captcha))
// 相同通過,則無效化驗證碼
session.setAttribute("captcha", null);

else
// 不通過并提示無效驗證碼


如有疑問,請指出!

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。


當前標題:java實現(xiàn)手機短信驗證的基本思路
轉(zhuǎn)載來源:http://weahome.cn/article/pjpghs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部