如何在遊戲陪玩app原始碼中實現簡訊驗證碼登入?
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0, ser-scalable=no"> <link rel="stylesheet" type="text/css" href="css/reset.css"/> <script type="text/javascript" src="js/jquery-3.2.1.js"></script> <title></title> <style type="text/css"> html { background: #efefef; } p { position: relative;height: 1rem;width: 90%; margin: 0 auto;border-bottom: 1px solid lightgray; } p input { outline: none;text-indent: 0.4rem;font-size: 0.3rem;height: 100%;width: 100%;background: rgba(0,0,0,0); } p span { display: inline-block;font-size: 0.3rem;color: gray;position: absolute;top: 0.35rem;right: 0.3rem; } div { width: 80%;height: 1rem;line-height: 1rem;text-align: center;background: #D81E06;color: #fff;font-size: 0.3rem;margin: 0.5rem auto 0;border-radius: 0.1rem; } i { width: 100%;text-align: center;display: inline-block;color: gray;margin-top: 0.4rem; } i wet { color: blue; } </style> </head> <body> <form id="form1"> <p style="padding-top: 2rem;"> <input type="number" value="" id="phone" name="phone" placeholder="請輸入手機號" /> </p> <p> <input type="number" id="code" name="code" placeholder="請輸入驗證碼" /> <span id="sendSms">獲取驗證碼</span> </p> <div id="login">登入</div> <i>點選登入,即表示已閱讀並同意<wet>《車友援服務協議》</wet></i> </form> </body> <script> $(function() { $("#sendSms").click(function() { $.ajax({ type: 'get', url: 'http://localhost:8080/api/customer/sengCodeNum', data: { "phoneNum":$("#phone").val() }, dataType: 'json', success: function(res) { if (res.code == 0) { alert("驗證碼已傳送到手機") //這裡寫作業2 }else{ alert("傳送失敗") } }, })
}) $("#login").click(function() { $.ajax({ type: 'post', url: 'http://localhost:8080/api/customer/customerLogin', data: { "phoneNum":$("#phone").val(), "codeNum":$("#code").val() }, dataType: 'json', success: function(res) { if (res.code == 0) { alert("登入成功") }else{ alert("驗證碼不對") } }, }) }) }); </script></html>
@RestController @CrossOrigin(origins = "*")//注意: *是來自於所有的域名請求@RequestMapping("/api/customer")public class CustomerController{@Autowired(required = false)private CustomerService customerService;@Autowired private JedisPool jedisPool; //傳送驗證碼 @RequestMapping("/sengCodeNum") public Map sendCodeNum(String phoneNum) { Map map = new HashMap(); //1.在傳送驗證碼之前,隨機撞見一個6位數的驗證碼 int randomNum = new Random().nextInt(999999);//0-999999 if (randomNum < 100000) { randomNum = randomNum + 100000; } //1.1在傳送驗證碼之前 需要向redis中查詢該手機 有沒有驗證碼存在,如果存在,就直接從redis中讀取,而不從阿里雲傳送,可以節省成本 //查詢pcode這個key在不在 Boolean b = jedisPool.getResource().exists("phoneNum"); if (b) { map.put("code", 0); map.put("msg", "驗證啊已存在,情趣簡訊中查詢"); return map; } else { //2.接受到前端傳過來的手機號:phoneNum 對其呼叫 阿里雲的傳送簡訊的工具類,去傳送驗證碼 ALSMSUtil.sendMsg(phoneNum, randomNum); //3.再送之後,將手機號當做redis key,驗證碼當做redis value 存入到redis資料庫中 String setex = jedisPool.getResource().setex(phoneNum, 120, String.valueOf(randomNum)); System.out.println("setex = " + setex); jedisPool.getResource().persist(phoneNum);//注意:這裡設定成-1 線上上環境測試要刪除 //4.將驗證碼傳送給前端 if ("OK".equals(setex)) { map.put("code", 0); map.put("msg", "傳送成功"); //map.put("data",randomNum);//線上不能把驗證碼傳送前端,容易被人利用 return map; } else { map.put("code", 500); map.put("msg", "傳送失敗"); return map; } } } //校驗手機號和驗證碼 @RequestMapping("/customerLogin") // /api/customer/customerLogin public Map customerLogin(String phoneNum,String codeNum){ Map map = new HashMap(); //1.根據前端傳來的手機號和驗證碼來和redis中的資料做對比 String redisCodeNum = jedisPool.getResource().get(phoneNum);//redis中的驗證碼 if(codeNum.equals(redisCodeNum)){ map.put("code",0); map.put("msg","傳送成功"); return map; }else{ map.put("code",500); map.put("msg","傳送失敗"); return map; } }}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69996194/viewspace-2794797/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 遊戲陪玩原始碼的登入方式,簡訊驗證碼登入的實現遊戲原始碼
- app直播原始碼,登入時輸入驗證碼、簡訊驗證身份APP原始碼
- vue實現簡訊驗證碼登入Vue
- uniapp 實現簡訊驗證碼登入APP
- 如何在遊戲陪玩系統原始碼中實現“刮刮樂”效果?遊戲原始碼
- Spring Security Oauth2.0 實現簡訊驗證碼登入SpringOAuth
- 遊戲陪玩系統原始碼中懶載入的實現方式有哪幾種?遊戲原始碼
- 遊戲陪玩app原始碼的可靠訊息最終一致性方案的實現遊戲APP原始碼
- 遊戲陪玩app原始碼開發,常用的倒數計時功能如何實現?遊戲APP原始碼
- 如何實現遊戲陪玩系統原始碼前端效能監控?遊戲原始碼前端
- 如何在遊戲陪玩系統原始碼中聊天室內實現一個禮物系統?遊戲原始碼
- 騰訊遊戲掃碼登入原始碼遊戲原始碼
- 遊戲陪玩APP遊戲APP
- 小視訊app原始碼,實現簡單的登入介面,輸入賬號密碼APP原始碼密碼
- 說說如何在登入頁實現生成驗證碼功能
- 遊戲陪玩系統原始碼中不同排序演算法的實現方式遊戲原始碼排序演算法
- 遊戲陪玩app開發,訊息可靠性的實現遊戲APP
- 如何在相親交友原始碼中實現正方形驗證碼輸入框?原始碼
- 遊戲陪玩原始碼的移動端適配,應該如何實現?遊戲原始碼
- 要想實現遊戲陪玩app原始碼的效能測試與調優,應該怎麼做?遊戲APP原始碼
- 如何實現直播間原始碼重要的簡訊驗證碼功能原始碼
- 陪玩系統原始碼中陣列去重的實現程式碼,簡單卻重要原始碼陣列
- node實現登入圖片驗證碼
- 遊戲陪玩app原始碼開發,啟動速度優化與監控遊戲APP原始碼優化
- 陪玩系統原始碼實現音訊編碼的相關步驟原始碼音訊
- SpringBoot + Spring Security 學習筆記(五)實現簡訊驗證碼+登入功能Spring Boot筆記
- 遊戲陪玩系統開發,音視訊混流的實現程式碼遊戲
- 自動化驗證碼登入如何實現?
- 遊戲陪玩平臺原始碼開發,依賴收集和觸發的實現遊戲原始碼
- 重視遊戲陪玩app原始碼前端異常監控和容災,保證系統穩定性遊戲APP原始碼前端
- 登入驗證碼生成kaptcha(輸入驗證碼)APT
- SpringSceurity(4)---簡訊驗證碼功能實現Spring
- 【總結】Java實現簡訊驗證碼Java
- 遊戲陪玩原始碼前端圖片載入優化的各種技巧遊戲原始碼前端優化
- 遊戲陪玩平臺原始碼,日期格式化的程式碼分析遊戲原始碼
- 如何使用 Redis 實現 陪玩原始碼中“附近的人” 這一功能?Redis原始碼
- 什麼是遊戲陪玩app原始碼開發的過度設計,如何避免?遊戲APP原始碼
- SpringSceurity(5)---簡訊驗證碼登陸功能Spring