本次只是记录一下渣渣的我在使用Vue异步请求时的遭遇,现在Vue很火,凡是使用Vue框架的,肯定都使用proxyTable这个鬼(凡是网络请求本地服务器都委托这个代理去请求),具体是什么,自行百度,因为我怕把你们带偏,这个鬼在使用初期并没有出现过什么状况,直到在登录验证的时候,它给我带来了一次血的教训,问题的根源是JSESSION_ID的不同(绕过了代理直接去请求),导致验证码验证失败,简单的说一下我遇到的情况:
到登录页面拿到验证码时的JSESSION_ID:
登录时的JSESSION_ID:
cookie情况:
可以明显的看出两次请求的session_id是不同的,并且查看Cookie发现JSESSION_ID的Domain和其他的也是不同的;所以两次的seesion_id不同导致登录时验证码失败;
解决:
拿验证码时使用本地ip(本地服务器委托代理去拿,确保是一个身份去拿的),如果跨过本地代理直接去目标服务器去拿就会出现两个身份,出现两个不同的session_id
正常到登录页面拿到验证码时的JSESSION_ID:
正常登录时的JSESSION_ID:
正常的cookie情况:
好了,附上图是不是有点感觉了,好吧,我承认可能只有我自己看的懂,不过,能给各位小伙伴一点提示也是值得的!