如果有一个站点在第一页上设置Cookie(a),则填写表格,然后您需要将相同的Cookie(a)发送到第二页。在第二页上,您填写另一个表单,将您发送到第三页,如果您发送Cookie(a),该站点将设置另一个Cookie(b),然后将您重定向到最后一页。但是为了显示最后一页,你需要两个饼干(a和b)
现在在java中,如果你打开到第一页的连接,从响应头获取Cookie(a)并将其作为requestProperty添加到第二页,你不能再使用URLConnection.write()了,因为你已经连接了。编写新的POSTDATA是必要的,以填写第2页,然后转到第3页。现在您可以创建另一个URLConnection>>将Cookie添加为requestProperty>>和连接,
但问题是: Cookie(a)仅对一个会话有效,因此当我打开第二个连接时,Cookie不再正确。如果你没有向page3发送正确的Cookie,它只会为.getHeaderFields.get(“Set-Cookie”)返回一个'null'。
那么有谁知道如何获得秒Cookie(b)?
- 可以通过保留/恢复/恢复相同的会话或某事......?
我希望这很清楚,否则只是请我澄清一下。谢谢!
答案 0 :(得分:0)
您可以尝试使用内置Cookie处理的Apache HttpClient。
答案 1 :(得分:0)
从Java 5开始,有一个cookiemanager,它将所有相关的cookie存储在一个地图中。您不必使用url.rewrite来管理cookie。谷歌为cookiemanager。这是第一个link,它是相关的。