我试图弄清楚如何使用HttpComponents设置和检索cookies,但我找不到可靠的文档,特别是当涉及到对请求设置cookies时。我设置的cookie似乎工作正常,但同时我不能确认我设置的cookie是否正确发送。
我注意到在调用client.execute()之后,我在请求上设置的cookie也在CookieStore中,但我不确定这是否只是因为我在调用client.execute()之前将其添加到CookieStore中(也许它停留在CookieStore中,而没有实际随请求一起发送?)。有没有好的方法来确认cookie是否已发送?
HttpGet get = new HttpGet("http://example.com/");
DefaultHttpClient client = new DefaultHttpClient();
// set the cookies
CookieStore cookieStore = new BasicCookieStore();
BasicClientCookie cookie = new BasicClientCookie("foo", "bar");
cookie.setDomain("example.com");
cookie.setPath("/something/");
cookieStore.addCookie(cookie);
client.setCookieStore(cookieStore);
// get the cookies
HttpResponse response = client.execute(get);
List<Cookie> cookies = client.getCookieStore().getCookies();发布于 2012-09-20 06:37:35
我找到了下面的示例,它演示了如何在登录示例中使用cookies:HttpComponents Example with Cookies
也许您可以通过服务器对发送的cookie内容的响应来修改此设置,这样您就可以评估cookie是否真的发送到了服务器。(您发送带有"foo“、"bar”或一些随机值的cookie,服务器将以"bar“、"foo”或类似的值响应)
https://stackoverflow.com/questions/12501912
复制相似问题