[轉] 驗證碼類庫 CaptchaMvc

來源:互聯網
上載者:User

標籤:style   blog   http   io   color   ar   使用   sp   java   

CaptchaMvc 是一個有彈性的、簡單的解決方案,它能夠解決你項目中所有與驗證碼相關的問題。你需要做的所有事情就是向你的項目中添加一個類庫,添加之後驗證碼就準備就緒了。該項目擁有使用驗證碼所需要的所有內容:

  • 有兩種類型的驗證碼,普通的和數學的
  • 支援在 session 或者 cookie 中儲存驗證碼
  • 支援“智能驗證碼”
  • 能夠很容易地擴充預設實現

CaptchaMvc 項目也在不斷地演變,我會盡量支援所有人提出的需求。我認為這些就是區分它和其他項目的主要內容。CaptchaMvc 項目支援 ASP.NET MVC 3、4和5,這些版本之間幾乎沒有什麼不同,僅僅是類庫中使用了 MVC 4中添加的 AllowAnonymousAttribute 屬性。

這個項目的智能驗證碼是特色:

智能驗證碼讓驗證碼對使用者更加友好,在最好的情況下使用者永遠不會看到驗證碼。有多種技術能夠讓驗證碼更加友好。例如,有一種技術稱為“假輸入欄位”。CaptchaMvc支援多種技術能夠區分使用者和機器人。讓我簡短的介紹一下每一種技術:

  • 假的輸入(類名—FakeInputIntelligencePolicy)——使用一個“假的”輸入欄位,正如我前面所寫的。
  • JavaScript(類名—JavaScriptIntelligencePolicy)——嘗試著去檢查使用者是否啟用了 JavaScript ,如果使用者禁用了JavaScript那麼使用者必須輸入一個驗證碼
  • 回應時間(類名—ResponseTimeIntelligencePolicy)——允許你設定一個時間,在該時間內驗證碼將被認為無效。假如一個機器人請求一個表單,填充它並提交…頁面載入和提交之前的間隔時間可能會少於一秒——沒有人能夠做到這一點。
  • 多種方式的組合(類名—MultiIntelligencePolicy)——允許你將不同的策略聯合到一起。

設定“智能驗證碼”的程式碼範例,下面是一個作者的網站上使用的程式碼範例:

1 CaptchaUtils.CaptchaManager.IntelligencePolicy = new 2 MultiIntelligencePolicy(3 new FakeInputIntelligencePolicy(),4 new JavaScriptIntelligencePolicy(),5 new ResponseTimeIntelligencePolicy(TimeSpan.FromSeconds(3)));

[轉] 驗證碼類庫 CaptchaMvc

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.