网站添加验证码,主要为防止机器人程序批量注册,或对特定的注册用户用特定程序暴力破解方式,以进行不断的登录、灌水等危害网站的操作。验证码被广泛应用在注册、登录、留言等提交信息到服务器端处理的页面中。 在ASP.NET网站中应用验证码是很容易的,网上有很多的解决方案。最近在做一个OA项目,因系统采用的ASP.NET MVC框架,同样在登录页中需用到验证码,故需将原来在ASP.NET网站中使用的验证码移植到ASP.NET MVC中。 原ASP.NET网站用来生成验证码的类文件ValidateCode.cs: Code
为适合ASP.NET MVC框架,修改其输出图片流的方法CreateValidateGraphic为: Code
在Controller.cs中,添加Action,用来设置将生成的验证码存入Session,并输出验证码图片: Code
调用方式为:在需要使用验证码的页面中,加入<img>标签: <img id="valiCode" style="cursor: pointer;" src="../Account/GetValidateCode" alt="验证码" /> 效果如下图: 到于Account/Login这个Action中的处理,只需加入对Session中验证码的判断: Code
为实现登录页中,点击图片切换验证码,可以登录页中加入此JS代码实现刷新验证码: JS Code
至此,ASP.NET MVC中已成功实现验证码功能。 |
|
来自: ThinkTank_引擎 > 《验证码》