中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么使用Java實現短信驗證碼

發布時間:2023-05-12 11:24:28 來源:億速云 閱讀:102 作者:iii 欄目:編程語言

本篇內容主要講解“怎么使用Java實現短信驗證碼”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么使用Java實現短信驗證碼”吧!

截圖展示

怎么使用Java實現短信驗證碼

實現代碼

后臺接收前臺的kgCaptchaToken進行驗證,驗證成功執行成功處理,驗證失敗返回錯誤代碼及信息。

package com.kyger;

import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Map;

public class demo extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    public demo() {
        super();
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        
    // 編碼
    request.setCharacterEncoding("utf-8");
    response.setCharacterEncoding("utf-8");;
    response.setContentType("text/html; charset=utf-8");
        
    // 后臺處理
    if (request.getMethod().equals("POST")){
        String html, appId, appSecret, Token;
    
    // 設置 AppId 及 AppSecret,在應用管理中獲取
    appId = "appId";
    appSecret = "appSecret";
            
    // 填寫你的 AppId 和 AppSecret,在應用管理中獲取
    KgCaptchaSDK KgRequest = new KgCaptchaSDK(appId, appSecret);
            
    
    // 前端驗證成功后頒發的 token,有效期為兩分鐘
    KgRequest.token = request.getParameter("kgCaptchaToken");
    // System.out.print(KgRequest.token);
    
    // 填寫應用服務域名,在應用管理中獲取
    KgRequest.appCdn = "https://cdn.kgcaptcha.com";
    
    // 請求超時時間,秒
    KgRequest.connectTimeout = 5;
            
    // 用戶登錄或嘗試帳號,當安全策略中的防控等級為3時必須填寫,一般情況下可以忽略
    // 可以填寫用戶輸入的登錄帳號(如:request.getParameter("username"),可攔截同一帳號多次嘗試等行為
    KgRequest.userId = "kgCaptchaDemo";
            
    // request 對象,當安全策略中的防控等級為3時必須填寫,一般情況下可以忽略
    KgRequest.request = request;
    // java 環境中無法提供 request 對象,請分別定義:clientIp|clientBrowser|domain 參數,即:
    // KgRequest.clientIp = "127.0.0.1";  // 填寫客戶端IP
    // KgRequest.clientBrowser = "";  // 客戶端瀏覽器信息
    // KgRequest.domain = "http://localhost";  // 你的授權域名或服務IP        
            
    // 發送驗證請求
    Map<String, String> requestResult = KgRequest.sendRequest();
    if("0".toString().equals(requestResult.get("code"))) {
        // 驗簽成功邏輯處理 ***
    
        // 這里做驗證通過后的數據處理
        // 如登錄/注冊場景,這里通常查詢數據庫、校驗密碼、進行登錄或注冊等動作處理
        // 如短信場景,這里可以開始向用戶發送短信等動作處理
        // ...
      
        html = "<script>alert('驗證通過');history.back();</script>";
    } else {
        // 驗簽失敗邏輯處理
        html = "<script>alert(\"" + requestResult.get("msg") + " - " + requestResult.get("code") + "\");history.back();</script>";
    }        
            
    response.getWriter().append(html);
    } else {
        response.sendRedirect("index.html");
    }        
}

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    doGet(request, response);
    }

}

后端檢測

后臺接收數據,同時對來源及應用進行檢測。

服務器黑名單檢測
if self.auth.client_blacklist():
    return self.r_code(20017)  # 服務器黑名單

# 驗簽次數限制檢測
excess = self.auth.excess(2)
if excess:
        return self.r_code(code=[20020, 20021, 20022][excess - 1])

# 來路域名檢測
if not self.kg["HTTP_REFERER"]: return self.r_code(20004)  # 域名不合法,無法獲取來路域名
if not self.auth.domain_auth(): return self.r_code(20005)  # 來源域名未授權

# 應用有效時間檢測
validity = self.auth.app_validity()
if validity[0] == 1: return self.r_code(20006)  # 授權未開始
if validity[0] == 2: return self.r_code(20007)  # 授權已結束

if self.auth.app_state(): return self.r_code(20008)  # 當前應用/域名被禁用

到此,相信大家對“怎么使用Java實現短信驗證碼”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

城步| 融水| 满洲里市| 宁化县| 洛扎县| 云龙县| 沙洋县| 辽阳市| 乐至县| 北宁市| 唐河县| 炉霍县| 额尔古纳市| 陆良县| 平乡县| 灵丘县| 桑日县| 图片| 巴林左旗| 吉安市| 武夷山市| 钟山县| 遂溪县| 田林县| 滦南县| 垦利县| 突泉县| 成安县| 泸水县| 永德县| 丹阳市| 屯留县| 浏阳市| 镶黄旗| 仁化县| 杂多县| 茶陵县| 湘西| 翁牛特旗| 云龙县| 中宁县|