zoukankan      html  css  js  c++  java
  • 验证码

    如何设计验证码的实现

                <input id="txtUserName" type="text" name="username" class="username" placeholder="请输入您的用户名!">
                <input id="txtPassword" type="password" name="password" class="password" placeholder="请输入您的用户密码!">
                <input type="Captcha" class="Captcha" name="Captcha" placeholder="请输入验证码!" />
                <img src="/Backstage/Home/CheckCode?ID=1" id="imgCode" class="check" alt="单击可刷新" onclick="ChangeCode();" />
                @*<a href="javascript:void(0)" onclick="ClickRemoveChangeCode();return false;">看不清</a>*@
                <button id="btnLogin" type="submit" class="submit_button">登录</button>
                <div class="error"><span>+</span></div>
    (1)首先我们看到我们绑定验证码的这里是这样写的,<img src=”/Login/CheckCode?ID=1”>,那么前面的src绑定的地址什么意思呢?他的意思就是我们在Login控制器下面含有一个CheckCode方法来实现验证码的读取

    (2)我们要实现验证码,首先我们就要写一个生成验证码的类,没什么难度,网上一搜一大推,下面就是我封装的生成验证码的类,首先我们在LYZJ.UserLimitMVC.Common类库下面新建一个KenceryValidateCode.cs类来存放生成验证码的代码,在这里我们需要给类库引入命名空间System.Drawing。最终的代码如下:

    KenceryValidateCode.cs

     

     

    (3)那么现在我们的验证码生成的类已经完成了,这时候我们根据<img src=”/Login/CheckCode?ID=1”>所知,我们要到Login控制器下面去创建CheckCode方法来实现能够从View层读取验证码显示出来,那么必然在我们项目当中women就要用到刚才定义的获取验证码的类,那么这时候women就要添加LYZJ.UserLimitMVC.Common的引用,这时候在Login控制器下面的读取验证码的方法代码如下:

            /// <summary>
            /// 验证码的实现
            /// </summary>
            /// <returns></returns>
            public ActionResult CheckCode()
            {
                //首先实例化验证码的类
                KenceryValidateCode validateCode = new KenceryValidateCode();
                //生成验证码指定的长度
                string code = validateCode.CreateValidateCode(4);
                //将验证码赋值给Session变量
                Session["ValidateCode"] = code;
                Session.Timeout = 30;
                //创建验证码的图片
                byte[] bytes = validateCode.CreateValidateGraphic(code);
                //最后将验证码返回
                return File(bytes, @"image/jpeg");
            }

    (4)view视图页面

    Login.cshtml
  • 相关阅读:
    【面积并】 Atlantis
    【动态前k大 贪心】 Gone Fishing
    【复杂枚举】 library
    【双端队列bfs 网格图建图】拯救大兵瑞恩
    【奇偶传递关系 边带权】 奇偶游戏
    【权值并查集】 supermarket
    CF w4d3 A. Pythagorean Theorem II
    CF w4d2 C. Purification
    CF w4d2 B. Road Construction
    CF w4d2 A. Cakeminator
  • 原文地址:https://www.cnblogs.com/tangge/p/4220399.html
Copyright © 2011-2022 走看看