首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

ASP.NET 驗證碼實作:圖片產生、Session 儲存與靜態驗證方法 (第 9 講第 4 部分)

     編輯:關於C語言

checkimage.aspx 核心流程

  1. 產生隨機驗證碼文字:Random 產生 4-6 碼英數字元,存入 Session["checkcode"]。
  2. 計算圖片尺寸:建立臨時 Bitmap、Graphics,用 MeasureString 量測文字寬高,加上邊距決定最終尺寸。
  3. 繪製驗證碼:建立正式 Bitmap、Graphics,DrawString 繪製文字 (設定 StringFormat 置中/靠左)。
  4. 製造干擾雜點:隨機位置、隨機顏色設定像素,數量佔圖片面積 30%,干擾 OCR 辨識但人眼易讀。
  5. 輸出 PNG:MemoryStream → Response.OutputStream,ContentType=image/png。

靜態驗證方法

public static bool CheckCode(string text)
{
    string saved = HttpContext.Current.Session["checkcode"] as string;
    return text == saved;
}

其他頁面 (如 login.aspx) 呼叫 checkimage.CheckCode(txtCode.Text) 即可驗證。

登入頁面示意

登入頁面含驗證碼

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved