解决.net图片验码与cookie不同步问题
呵,在各位大侠面前,可能有点二
又有一点心得,写一个注册页面的时候,按昨天的方法,发现图片验证码的一个问题,即通过session传值的时候,只能在服务端进行验证,这样的话,表单必须进行提交,前面输入的值就没有了,得重新录入.为了一个验证码的错误,就得重新输入,不值得.
所以只能考虑在客户端通过js进行验证,但是有一个问题,js是客户端运行,根本没有办法获取到session的值,所以也就无从谈起进行对比验证.没有办法,采取session写入cookies的方式进行,即在当前注册页的protected void Page_Load(object sender, EventArgs e)方法中,将session值写入cookies,然后在js中通过获取cooki来判断验证码的正确.
这时问题又出现,即用这种方式cooki得的数据与图片验证码的内容即session的内容不同步,总是晚一步.即获取到是上次刷新的内容.
无奈之下,将写入cooki操作的代码,由protected void Page_Load(object sender, EventArgs e)中转移到了图片验证代码所在文件中,战战惊惊测试,竟然成功了!
唉,希望大家能找出更好的方法,当然如果不用ajax的情况下,因为我还没有接触过.