事件还原:
手头的一个项目平时登陆的时候都是注释了验证验证码的代码,近期接近交付,于是放出了这段代码,然后验证老是出现验证码错误,排查问题后发现是带的cookie为空导致验证不了(原理是:生成的cookies通过MD5加密后发送给客户端,然后客户端通过登陆ajax请求带上cookie出入服务端验证两个验证码是否相同)。
解决方案:
排查jar包的源码后发现他是cookie.setPath("/")是注释的,相当于这个cookie的路径没有设置,是使用的默认路径,默认路径会自动将请求的最后一个/的后面的字符作为路径,然而请求验证码的方法和请求登陆的方法是不同的,于是两次的路径便不同,路径不同导致访问的时候不会带上cookie,困扰了一天的问题终于解决了,不过也花一天的时间把cookie的机制也彻底理清了。。。铭记...