4
回答
java抓取动态图片验证码与SESSION不匹配
【腾讯云】校园拼团福利,1核2G服务器10元/月!>>>   

我是用ocr过滤抓取了验证码,生成解析都没问题,但是SESSION和生成的图片信息不匹配,请问 逻辑上是怎么操作的? 目前 我是这样 获得动态图片的地址-》解析-》验证码结果和一些参数一起模拟用户提交给程序     -》 结果每次都报验证码错误    

举报
tangzi
发帖于6年前 4回/2K+阅
共有4个答案 最后回答: 4年前

conn.setRequestProperty("Accept", "*/*");
conn.setRequestProperty("User-Agent", "Mobile XML");

conn.setRequestProperty("Cookie", cki);

头是指http协议头,类似上面的

动态获取验证码图片时,后台一般会返回一个cookie用于session

解析后,随参数提交时,要把cookie交回去,即在同一session操作

可能你提交参数时没管cookie,后台认为新session

--- 共有 5 条评论 ---
TrulyBelieve回复 @valin : get一个页面,回复HTTP头里会有Set-Cookies的字段,JSESSIONID应该在里面。 4年前 回复
valin回复 @tangzi : 这个JSESSIONID怎么获得,怎么一并提交呢 4年前 回复
tangzi回复 @TrulyBelieve : 头设置是指放链接里?我加了jSessionid直接url去拼接访问好像也不行;我发现就算我POST过去了,但是服务器端 的SESSION还是不变(我写的脚本和服务器端是两台服务器,A端后台代码请求去B端得到B上的验证码图片,B这个返回的图片和B存在SESSION里的是竟然是不同的,非常诡异),还是困惑呃。。 6年前 回复
TrulyBelieve回复 @王振堂 : 对,这个是cookie值,要在头里设置好,提交参数 6年前 回复
tangzi是指cookies里的类似JSESSIONID:03A9A6B1443C26D576AD591C301014D5 也一并提交过去吗? 6年前 回复
顶部