【发布时间】:2012-12-15 21:47:22
【问题描述】:
我正在使用 URLConnection 登录页面。当我成功登录时,页面上将设置一个会话值。之后我想访问站点上的其他文件,但我无法维护站点的会话状态。有什么想法吗?
【问题讨论】:
标签: java session urlconnection
我正在使用 URLConnection 登录页面。当我成功登录时,页面上将设置一个会话值。之后我想访问站点上的其他文件,但我无法维护站点的会话状态。有什么想法吗?
【问题讨论】:
标签: java session urlconnection
我建议您改用 Apache HttpClient / HttpComponents。它具有维护客户端 cookie 存储的功能。
跨URLConnection 实例维护会话状态涉及:
在 Java 1.6 之前,没有公共 Java API 可以为您执行此操作,您必须“手动”完成所有操作。从 Java 1.6 开始,以CookieHandler/CookieManager/HttpCookie/CookieStore/CookiePolicy 的形式提供支持。详情请参考javadocs。
相关页面:
【讨论】:
听起来您尝试访问的网站基于 cookie 处理会话。您可能需要捕获该 cookie 并将其添加到未来的请求中。这个问题可能对那篇文章有所帮助:
【讨论】:
从 URLConnection 读取以查看是否设置了任何 cookie 或发送了包含会话 ID 的重定向,您可以将其发送回其他站点。
【讨论】: