網站密碼找回短信驗證碼功能實現流程


今天我想了一天如何實現網站用戶在忘記了密碼后,如何通過向手機發送驗證碼來重新設置密碼。驗證碼的驗證以及生成都已經做好了,現在主要是解決如何向用戶手機發送短信。顯然這需要一個第三 方提供的短信接口,來幫助我們實現向用戶手機發送驗證碼短信。這里我通過朋友介紹使用的是動力思維樂信這家的短信接口,(接入文檔和代碼示例地址:http://www.lx598.com/document.html)接 入起來比較簡單,主要朋友告訴我,這家的短信響應速度快、到達率高、穩定,在這里也向大家推薦下,下面就拿我自己的網站,貼下實現代碼:


這個是后端的實現代碼:

package com.dlsw;  
  
import java.io.BufferedReader;  
import java.io.IOException;  
import java.io.InputStreamReader;  
import java.io.UnsupportedEncodingException;  
import java.net.HttpURLConnection;  
import java.net.MalformedURLException;  
import java.net.URL;  
import java.net.URLEncoder;  
import java.util.Random;
  
public class ShortMessage {  
  
    private accName = 電話號或者郵箱號;//用戶賬號  
    private accPwd = "e10adc3949ba59abbe56e057f20f883e";//登陸密碼的MD5值32位  
  
    public String Send(String aimcodes, String content) throws UnsupportedEncodingException{  
          
        HttpURLConnection httpconn = null;  
        String content = content.trim();//發送短信內容
        StringBuilder sb = new StringBuilder();  
          
        sb.append("http://www.lx198.com/sdk/send?accName=");   //第三方接口地址及參數
        sb.append(accName);  
        sb.append("&accPwd=").append(accPwd);  
        sb.append("&aimcodes=").append(aimcodes);  
        sb.append("&content=").append(URLEncoder.encode(content,"utf-8"));   

String result = false;
        System.out.println(sb.toString());  
        try {  
            URL url = new URL(sb.toString());  
            httpconn = (HttpURLConnection) url.openConnection();  
            BufferedReader read = new BufferedReader(new InputStreamReader(httpconn.getInputStream()));  
            result = read.readLine();  
            read.close();  
        } catch (MalformedURLException e) {  
            e.printStackTrace();  
        } catch (IOException e) {  
            e.printStackTrace();  
        } finally{  
            if(httpconn != null){  
                httpconn.disconnect();  
                httpconn = null;  
            }  
        }  
return result;  
    }  
      
    public static void main(String[] args) {  
        String mobile="187xxxxxxxx";  
String verifyCode =    String.valueOf(new Random().nextInt(899999) + 100000);//隨機生成驗證碼
        String content="您正在使用密碼找回功能,驗證碼為 " + verifyCode +"【動力思維】";  
        try {  
            String result = new ShortMessage().Send(aimcodes, content);  
            System.out.println(result);  
        } catch (UnsupportedEncodingException e) {  
            e.printStackTrace();  
        }  
    }  
}  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM