分享

ASP.NET MVC实现网站验证码功能

 ThinkTank_引擎 2016-02-04
     网站添加验证码,主要为防止机器人程序批量注册,或对特定的注册用户用特定程序暴力破解方式,以进行不断的登录、灌水等危害网站的操作。验证码被广泛应用在注册、登录、留言等提交信息到服务器端处理的页面中。

     在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中已成功实现验证码功能。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多