js刷新验证码(.net)

发布时间:2020-09-01 18:31:04 作者:dingzhaoqiang
来源:网络 阅读:428


js刷新验证码:

<a href="javascript:changeImg();"  title="看不清?点击换一张">
 <img id="imgcode" src="Handler/CheckCodeHandler.ashx?type=login&stamp=1" width="80" height="30" onclick="changeUrl()"/>
</a>


//刷新验证码

function changeImg() {
  document.getElementById("imgcode").src = "Handler/CheckCodeHandler.ashx?type=login&stamp=" + Math.random();
 }


CheckCodeHandler.ashx

using System;
using System.Web;
namespace YK.WebSite.Handler
{
    /// <summary>
    /// 用于验证码的处理程序
    /// 调用该处理程序时,要加参数type,表明是哪一个功能需要的验证码
    /// 获取验证码的SessionKey是YK.Website.CheckCode.[type]
    /// </summary>
    public class CheckCodeHandler : IHttpHandler
    {
        public HttpResponse Response
        {
            get
            {
                return HttpContext.Current.Response;
            }
        }
        public HttpRequest Request
        {
            get
            {
                return HttpContext.Current.Request;
            }
        }
        public void Proce***equest(HttpContext context)
        {
            string type = Request.QueryString["type"];
            if (String.IsNullOrWhiteSpace(type)) return;
            Response.Buffer = true;
            Response.ExpiresAbsolute = System.DateTime.Now.AddMilliseconds(0);
            Response.Expires = 0;
            Response.CacheControl = "no-cache";
            Response.AppendHeader("Pragma", "No-Cache");
            string chkCode = String.Empty;
            byte[] bytes = YK.Common.Util.CheckCodeKit.GetChkCodeBytes(ref chkCode);
            YK.Core.Context.Context.SetDataBySession("YK.Website.CheckCode." + type, chkCode);
            Response.ClearContent();
            Response.ContentType = "p_w_picpath/Png";
            Response.BinaryWrite(bytes);
        }
        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}


把参数的值写成随机数
这样每次点击刷新的时候
缓存就不一样了
就可以起到刷新的效果了

js刷新验证码(.net)

推荐阅读:
  1. thinkphp验证码设置及刷新
  2. JS如何刷新页面

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

验证码 ne j

上一篇:SpringBoot快速设置拦截器并实现权限验证的方法

下一篇:Python中存取文件的4种不同操作

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》