【发布时间】:2011-04-15 18:00:42
【问题描述】:
我正在开发一个应用程序来登录页面,然后访问一些页面数据。 我通过 Firefox 登录并使用 LiveHeaders 查看会话 cookie。
然后我更新了我的代码:
connection.addRequestProperty("Cookie", "XXXXXXXXXXXXXXXXXXXXX");
用 cookie 替换“XXXXXX”。 然后程序可以访问所需的页面。
我正在尝试自动化该过程并使用了 Apache HttpClient。 我可以通过 HttpClient 登录并获取会话 cookie,但由于某种原因,会出现以下问题:
在main方法中,我添加了
String cookieString = doLogin();
然后改变我的其他方法来使用
connection.addRequestProperty("Cookie", cookieString);
由于某种原因,URLConnection 无法登录。
如果我复制我打印出来的cookieString 字符串,并将我的代码更改为
connection.addRequestProperty("Cookie", "[the printout of the cookie string]");
然后就可以了。
我不知道问题可能出现在哪里。
我已经在方法中打印出cookieString 变量,然后将其添加到标题中,它与应有的完全相同。
cookie 似乎只在它是静态字符串 ("xxxxxx") 时才有效,如果它是字符串变量则无效。
任何想法都将不胜感激。
提前致谢。
【问题讨论】:
标签: java session cookies urlconnection jsessionid