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