想到現(xiàn)在不止手機可以,還有郵箱,而且郵箱比短信平臺穩(wěn)定點,以防萬一,所以有加了一個郵箱驗證碼的功能。
先上效果圖:
(后臺)
(郵箱)
(驗證)
1、獲取郵箱授權碼
2、只開啟這個就好了,按要求發(fā)送短信,保存授權碼
導包
<!– 郵箱發(fā)送 –> <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.4</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>3.2.17.RELEASE</version> </dependency>
jsp頁面
<!– 存放返回的驗證碼 –> <input type="hidden" name="keepCode" id="keepCode" value="gzh" /> <div class="form-group" style="display: none;" id="emailDiv"> <label for="input_email"> <span class="glyphicon glyphicon-envelope"></span> <label for="email">密保郵箱</label></label> <input class="form-control input-lg" id="email" name="email" placeholder="請輸入注冊的密保郵箱!" type="text" value=""> </div>
js
var mail = $("#email").val(); var paras2 = "o_mail=" mail; $.post(path "/mail/sendMail?" paras2, function(data) { if (data != null && typeof (data) != "undefined") { var mailCode = data; $("#keepCode").attr("value", mailCode); } }, "json");
controller
@Controller @RequestMapping("/mail") public class EmailController { @ResponseBody @RequestMapping(value = "/sendMail",method = RequestMethod.POST) public String sendMail(HttpServletRequest request,HttpServletResponse response) throws ClientException { String email = request.getParameter("o_mail");//獲取前端傳送過來的電話號碼 String randomNum = createRandomNum(6);//隨機生成6位數(shù)的驗證碼 JavaMailSenderImpl mailSender = new JavaMailSenderImpl(); mailSender.setHost("smtp.qq.com");//qq郵箱服務器 mailSender.setPort(587);//端口 mailSender.setUsername("你的郵箱");//發(fā)送者 mailSender.setPassword("你的授權碼");//POP3/SMTP服務授權碼 SimpleMailMessage mail = new SimpleMailMessage(); mail.setTo(email);// 接受者 mail.setFrom("你的郵箱");//發(fā)送者 mail.setSubject("MIP影視管理系統(tǒng)");//主題 mail.setText("您好!您的郵箱驗證碼:" randomNum " 打死也不能告訴別人!");// 郵件內(nèi)容 mailSender.send(mail); System.out.println(mail); return randomNum; } /** * 生成隨機數(shù) * @param num 位數(shù) * @return */ public static String createRandomNum(int num){ String randomNumStr = ""; for(int i = 0; i < num;i ){ int randomNum = (int)(Math.random() * 10); randomNumStr = randomNum; } return randomNumStr; } }
以上全部
更多關于云服務器,域名注冊,虛擬主機的問題,請訪問西部數(shù)碼官網(wǎng):bingfeng168.cn