為了應付越來越多的自動發帖機、惡意攻擊等情形,驗證碼技術在大量的網站上得到使用。我在近期開發一個注冊網站的時候,也使用了這一技術。當然,我並不想完完全全自己重新實現,而是參考了網上能夠找到的實現,做了若干改進而已。下面談談我的實現。
補兩張圖片:
首先看驗證碼圖片輸出頁的代碼:
<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { VryImgGen gen = new VryImgGen(); string verifyCode = gen.CreateVerifyCode(5, 1); Session["VerifyCode"] = verifyCode.ToUpper(); System.Drawing.Bitmap bitmap = gen.CreateImage(verifyCode); System.IO.MemoryStream ms = new System.IO.MemoryStream(); bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Png); Response.Clear(); Response.ContentType = "image/Png"; Response.BinaryWrite(ms.GetBuffer()); bitmap.Dispose(); ms.Dispose(); ms.Close(); Response.End(); } </script>