java調介面實現傳送手機簡訊驗證碼功能,手機驗證碼,介面呼叫
阿新 • • 發佈:2019-01-08
近來由於專案需要,需要用到手機簡訊驗證碼的功能,其中最主要的是用到了第三方提供的簡訊平臺介面WebService客戶端介面,下面我把我在專案中用到的記錄一下,以便給大家提供個思路,由於本人的文采有限,還請大家見諒!
一:首先上幾張案例截圖,以便大家可以瞭解一下簡訊驗證碼的流程,這裡我在做的過程中也參考了很多網站的簡訊驗證碼,比如:58同城,汽車之家等。
1.點選獲取驗證碼之前的樣式:
2.輸入正確的手機號後點擊獲取驗證碼之後的樣式:
3.如果手機號已經被註冊的樣式:
4.如果一個手機號一天傳送超過3次就提示不能傳送:
二:前臺的註冊頁面的程式碼:reg.jsp
- <%@ page language=“java”import=“java.util.*”pageEncoding=“UTF-8”%>
- <%@taglib prefix=“s”uri=“/struts-tags”%>
- <%@page import=“cn.gov.csrc.base.action.FindAllData”%>
- <%
- String path = request.getContextPath();
- String basePath = request.getScheme() + ”://”
-
+ request.getServerName() + ”:” + request.getServerPort()
- + path + ”/”;
- %>
- <!DOCTYPE HTML PUBLIC ”-//W3C//DTD HTML 4.01 Transitional//EN”>
- <html>
- <head>
- <basehref=“<%=basePath%>”>
- <title>中國證券會證券期貨違法違規舉報中心-註冊</title>
- <metahttp-equiv=“pragma”content=“no-cache”>
-
<metahttp-equiv=“cache-control”content
- <metahttp-equiv=“expires”content=“0”>
- <metahttp-equiv=“keywords”content=“keyword1,keyword2,keyword3”>
- <metahttp-equiv=“description”content=“This is my page”>
- <linkrel=“shortcut icon”type=“image/x-icon”href=“<%=request.getContextPath()%>/images/favicon.ico”/>
- <linkrel=“stylesheet”type=“text/css”
- href=“<%=request.getContextPath()%>/css/main.css”>
- <link
- href=“<%=request.getContextPath()%>/formValidator1/style/validator.css”
- rel=“stylesheet”type=“text/css”/>
- <styletype=“text/css”>
- button {
- background: #F0F0F0 repeat-x;
- padding-top: 3px;
- border-top : 1px solid #708090;
- border-right: 1px solid #708090;
- border-bottom: 1px solid #708090;
- border-left: 1px solid #708090;
- width: auto;
- line-height: 12pt;
- font-size : 10pt;
- cursor: hand;
- font-size: 10pt;
- border-top: 1px solid #708090;
- }
- </style>
- <scriptsrc=“<%=request.getContextPath()%>/js/jquery-1.7.2.min.js”
- type=“text/javascript”></script>
- <scriptsrc=“<%=request.getContextPath()%>/formValidator1/formValidator-4.0.1.js”
- type=“text/javascript”></script>
- <scriptsrc=“<%=request.getContextPath()%>/formValidator1/formValidatorRegex.js”
- type=“text/javascript”></script>
- <scriptsrc=“<%=request.getContextPath()%>/js/register.js”
- type=“text/javascript”></script>
- <scriptsrc=“<%=request.getContextPath()%>/js/sms.js”
- type=“text/javascript”></script>
- <scripttype=“text/javascript”>
- function changeCheckNum() {
- var checkNumImage_ = document.getElementById(“checkNumImage”);
- checkNumImage_.src = “${pageContext.request.contextPath}/image.jsp?timeStamp=”+ new Date().getTime();
- }
- </script>
- <scripttype=“text/javascript”>
- var msg = “${message}”;
- if (msg != ”“) {
- alert(msg);
- }
- </script>
- </head>
- <body>
- <%@include file=“/statics/top.jspf”%>
- <divclass=“center_division”>
- <divclass=“center_body”>
- <divclass=“center_menu”>
- <fontcolor=“#000000”>當前位置:</font>
- <ahref=“<%=request.getContextPath()%>/statics/reg.jsp”><fontcolor=“#000000”>使用者註冊</font></a>
- </div>
- </div>
- <divclass=“center_body_menu”>
- <s:formaction=“RegisterAction_register”id=“form1”name=“form1”method=“post”namespace=“/”>
- <tableid=“tb”>
- <tr>
- <tdcolspan=“3”align=“center”bgcolor=“#DDDFE1”>舉報人基本資訊</td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”><imgsrc=“images/new_reg_xing.gif”/>使用者名稱:</td>
- <tdalign=“center”width=“40%”>
- <s:textfieldname=“username”id=“username”cssStyle=“width:160px;height:24px;”onblur=“checkusername()”/>
- </td>
- <tdalign=“left”width=“30%”>
- <spanid=“usernameTip”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>username</s:param>
- </s:fielderror>
- </span>
- </td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”><imgsrc=“images/new_reg_xing.gif”/>登入密碼:</td>
- <tdalign=“center”width=“40%”>
- <s:passwordname=“password”id=“password”cssStyle=“width:160px;height:24px;”onblur=“checkpassword()”/>
- </td>
- <tdalign=“left”width=“30%”>
- <spanid=“passwordTip”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>password</s:param>
- </s:fielderror>
- </span>
- </td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”><imgsrc=“images/new_reg_xing.gif”/>確認密碼:</td>
- <tdalign=“center”width=“40%”>
- <s:passwordname=“passwordRepeat”id=“passwordRepeat”cssStyle=“width:160px;height:24px;”onblur=“checkpasswrodb()”/>
- </td>
- <tdalign=“left”width=“30%”>
- <spanid=“passwordRepeatTip”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>passwordRepeat</s:param>
- </s:fielderror>
- </span>
- </td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”><imgsrc=“images/new_reg_xing.gif”/>姓 名:</td>
- <tdalign=“center”width=“40%”>
- <s:textfieldname=“nickname”id=“nickname”cssStyle=“width:160px;height:24px;”onblur=“checknickname()”/>
- </td>
- <tdalign=“left”width=“30%”>
- <spanid=“nicknameTip”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>nickname</s:param>
- </s:fielderror>
- </span>
- </td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”>性 別:</td>
- <tdalign=“center”width=“40%”>
- <s:radiolist=“#application.dataMap.get(‘10001’)”name=“jbSex”cssStyle=“height:24px;”/>
- </td>
- <tdalign=“left”width=“30%”></td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”>聯絡地址:</td>
- <tdalign=“center”width=“40%”>
- <s:textfieldname=“jbAddress”id=“jbAddress”cssStyle=“width:160px;height:24px;”/>
- </td>
- <tdalign=“left”width=“30%”>
- <spanid=“jbAddressTip”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>jbAddress</s:param>
- </s:fielderror>
- </span>
- </td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”><imgsrc=“images/new_reg_xing.gif”/>聯絡手機:</td>
- <tdalign=“center”width=“40%”>
- <s:textfieldid=“jbPhone”name=“jbPhone”cssStyle=“width:160px;height:24px;”onblur=“checkjbPhone()”/>
- </td>
- <tdalign=“left”width=“30%”>
- <spanid=“jbPhoneTip”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>jbPhone</s:param>
- </s:fielderror>
- </span>
- </td>
- </tr>
- <tr>
- <tdalign=“center”><imgsrc=“images/new_reg_xing.gif”/>簡訊驗證碼:</td>
- <tdalign=“left”colspan=“2”style=“padding-left: 112px;”>
- <s:textfieldid=“SmsCheckCode”name=“SmsCheckCode”cssStyle=“width:80px;height:24px;”maxLength=“6”/>
- <span><inputtype=“button”id=“btnSendCode”name=“btnSendCode”value=“免費獲取驗證碼”onclick=“sendMessage()”/></span>
- <spanid=“SmsCheckCodeTip”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>SmsCheckCodeTip</s:param>
- </s:fielderror>
- </span>
- </td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”><imgsrc=“images/new_reg_xing.gif”/>證件型別:</td>
- <tdalign=“center”width=“40%”>
- <s:selectlist=“#application.dataMap.get(‘10002’)”label=“”
- headerKey=“”headerValue=“–請選擇–”value=“1”listValue=“value”onchange=“enableCredentialsCode(this)”
- name=“jbCredentialsName”id=“jbCredentialsName”cssStyle=“width:160px;height:24px;”/>
- </td>
- <tdalign=“left”width=“30%”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>jbCredentialsName</s:param>
- </s:fielderror>
- </td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”><imgsrc=“images/new_reg_xing.gif”/>證件號碼:</td>
- <tdalign=“center”width=“40%”>
- <s:textfieldname=“jbCredentialsCode”id=“jbCredentialsCode”cssStyle=“width:160px;height:24px;”onblur=“checkjbCredentialsCode()”/>
- </td>
- <tdalign=“left”width=“30%”>
- <spanid=“jbCredentialsCodeTip”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>jbCredentialsCode</s:param>
- </s:fielderror>
- </span>
- </td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”>單位名稱:</td>
- <tdalign=“center”width=“40%”>
- <s:textfieldname=“jbCompanyName”id=“jbCompanyName”cssStyle=“width:160px;height:24px;”/>
- </td>
- <tdalign=“left”width=“30%”>
- <spanid=“jbCompanyNameTip”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>jbCompanyName</s:param>
- </s:fielderror>
- </span>
- </td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”><imgsrc=“images/new_reg_xing.gif”/>所在地區:</td>
- <tdalign=“center”width=“40%”>
- <s:selectlist=“#application.dataMap.get(‘10003’)”label=“”
- headerKey=“”headerValue=“–請選擇–”listKey=“key”
- cssStyle=“width:160px;height:24px;”listValue=“value”id=“jbSourceArea”
- name=“jbSourceArea”onblur=“checkjbSourceArea()”/>
- </td>
- <tdalign=“left”width=“30%”>
- <spanid=“jbSourceAreaTip”>
- <s:fielderrorcssStyle=“color:red;padding-left:10px;”>
- <s:param>jbSourceArea</s:param>
- </s:fielderror>
- </span>
- </td>
- </tr>
- <tr>
- <tdalign=“center”width=“30%”>