激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 在Web項目中手機短信驗證碼實現(xiàn)的全過程記錄

在Web項目中手機短信驗證碼實現(xiàn)的全過程記錄

2021-03-01 14:11james Java教程

這篇文章主要給大家介紹了關于在Web項目中實現(xiàn)短信驗證碼的全過程記錄,文中通過示例代碼介紹的非常詳細,在文末跟大家提供了源碼下載,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧。

前言

最近在做遠程智能水表管理系統(tǒng)這個過程有一個功能是在注冊頁面可以使用手機注冊,找了許久才大致了解了手機驗證碼實現(xiàn)流程,今天在此和大家分享一下。下面話不多說了,來一起看看詳細的介紹吧。

短信驗證碼實現(xiàn)流程

      1、構造手機驗證碼:使用random對象生成要求的隨機數(shù)作為驗證碼,例如4位驗證碼:1000~9999之間隨機數(shù);

      2、使用接口向短信平臺發(fā)送手機號和驗證碼數(shù)據(jù),然后短信平臺再把驗證碼發(fā)送到制定手機號上,接口參數(shù)一般包括:目標手機號,隨機驗證碼(或包含失效時間),平臺接口地址,平臺口令;

      3、保存接口返回的信息(一般為json文本數(shù)據(jù),然后需轉換為json對象格式);

      4、將手機號--驗證碼、操作時間存入Session中,作為后面驗證使用;

      5、接收用戶填寫的驗證碼及其他數(shù)據(jù);

      6、對比提交的驗證碼與Session中的驗證碼是否一致,同時判斷提交動作是否在有效期內(nèi);

      7、驗證碼正確且在有效期內(nèi),請求通過,處理相應的業(yè)務。

今天我們就前4步進行實現(xiàn):

為了簡化流程,我們在就使用固定手機驗證碼而不采用隨機產(chǎn)生的數(shù)作為驗證碼

在此我們有一個前端頁面一個后臺邏輯處理頁面,下面就該兩項進行簡單說明:

前端頁面

?
1
2
3
4
5
6
7
8
9
10
11
12
<body>
 <h1>
  <%
  Send send = new Send();
  String PostData = "account=JamesXT&password=18770918982lkx&mobile=18770918982&content="+java.net.URLEncoder.encode("您的訂單編碼:4557。如需幫助請聯(lián)系客服。","utf-8");
  //out.println(PostData);
  String ret = Send.SMS(PostData, "http://sms.106jiekou.com/utf8/sms.aspx");
  out.println(ret);
  //請自己反序列化返回的字符串并實現(xiàn)自己的邏輯
 %>
 </h1>
 </body>

PostData:就是想短信服務平臺提交的待處理的數(shù)據(jù),它一般包括短信服務平臺注冊者的用戶賬號名,密碼,以及你想向誰發(fā)送短信驗證碼以及短信驗證碼所屬信息的完整內(nèi)容。

?
1
String ret = Send.SMS(PostData, <a rel="external nofollow" href="http://sms.106jiekou.com/utf8/sms.aspx">http://sms.106jiekou.com/utf8/sms.aspx</a>);

這個是將數(shù)據(jù)和短信服務平臺的網(wǎng)址進行綁定,即該提交數(shù)據(jù)交付哪個平臺進行處理。

后臺邏輯處理類:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
public class Send {
 //SMS方法中有兩個參數(shù),這個參數(shù)是由前臺頁面提交的PostData和前者綁定的短信服務地址確定的
 public static String SMS(String postData, String postUrl) {
 try {
  //發(fā)送POST請求
  URL url = new URL(postUrl);
  HttpURLConnection conn = (HttpURLConnection) url.openConnection();
  conn.setRequestMethod("POST");
  conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
  conn.setRequestProperty("Connection", "Keep-Alive");
  conn.setUseCaches(false);
  conn.setDoOutput(true);
  conn.setRequestProperty("Content-Length", "" + postData.length());
  OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");
  //將前臺提交的數(shù)據(jù)放入輸出流中,即向短信服務平臺發(fā)送該條業(yè)務請求
  out.write(postData);
  out.flush();
  out.close();
 
  //獲取響應狀態(tài)碼
  if (conn.getResponseCode() != HttpURLConnection.HTTP_OK) {
  System.out.println("connect failed!");
  return "";
  }
  //獲取響應內(nèi)容
  String line, result = "";
  BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "utf-8"));
  while ((line = in.readLine()) != null) {
  result += line + "\n";
  }
  in.close();
  return result;
 } catch (IOException e) {
  e.printStackTrace(System.out);
 }
 return "";
 }
}

最后附上Demo源碼地址:MobileRegist.rar

本demo所用短信服務商地址為:http://www.106jiekou.com/login/?ReturnUrl=/member/trigger/templates/

總結

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。

原文鏈接:https://segmentfault.com/a/1190000012298280

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 空姐毛片| 久久精品国产99久久6动漫亮点 | 综合欧美一区二区三区 | 国产成人精品免高潮在线观看 | 日韩精品中文字幕一区 | 久久久久久久午夜 | 成年人毛片视频 | 成人黄视频在线观看 | av电影在线播放 | 黄色99视频 | 视频在线亚洲 | 欧美a在线 | 成品片a免人视频 | 成年性羞羞视频免费观看无限 | 国产高潮国产高潮久久久91 | 欧美亚洲免费 | 国产黄色录像片 | 自偷自偷久产久精九国品在线 | 欧美日韩国产成人在线观看 | 羞羞视频入口 | 久久99精品久久久久久国产越南 | 日本高清在线免费 | 91亚洲精品一区二区福利 | 欧美日韩亚洲在线 | 牛牛视频在线 | 亚洲影院久久久av天天蜜桃臀 | 国产日韩在线视频 | 日本在线视频二区 | a级在线| 操碰视频在线观看 | 韩国精品一区二区三区四区五区 | 精品一区二区三区在线播放 | 成人一区二区在线观看视频 | 黄免费在线 | 亚洲午夜免费电影 | 欧美性生交大片 | 欧美精品一区二区中文字幕 | 视频一区二区中文字幕 | 午夜视频成人 | 欧美另类视频一区 | 7777在线观看 |