java - 如何从 HttpClient 获取 cookie?

标签 java cookies apache-httpclient-4.x

我正在使用 HttpClient 4.1.2

HttpGet httpget = new HttpGet(uri); 
HttpResponse response = httpClient.execute(httpget);

那么,如何获取 cookie 值?

最佳答案

不确定为什么接受的答案描述了一个不存在的方法 getCookieStore()。这是不正确的。

您必须事先创建一个 cookie 存储,然后使用该 cookie 存储构建客户端。然后您可以稍后引用此 cookie 存储以获取 cookie 列表。

/* init client */
HttpClient http = null;
CookieStore httpCookieStore = new BasicCookieStore();
HttpClientBuilder builder = HttpClientBuilder.create().setDefaultCookieStore(httpCookieStore);
http = builder.build();

/* do stuff */
HttpGet httpRequest = new HttpGet("http://stackoverflow.com/");
HttpResponse httpResponse = null;
try {httpResponse = http.execute(httpRequest);} catch (Throwable error) {throw new RuntimeException(error);}

/* check cookies */
httpCookieStore.getCookies();

关于java - 如何从 HttpClient 获取 cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8733758/

相关文章:

java - HttpClientBuilder 使用的是 TLSv1.2 而不是 TLSv1

java - Apache Httpclient 连接未释放

java - bash 命令在 tomcat/java Runtime.getRuntime.exec() 中失败,但可以从命令行运行

java - 休息 Controller ,提供枚举名称但将其值保存在数据库中

Javascript document.cookie 总是返回空字符串

javascript - 如何判断cookie值是否匹配

c# - 图像缓存、HTTPHandler 和 FormsAuthentication

java - 在 Apache HttpClient 4.3.6 上禁用 NTLM

java - Apache Spark - 本地 CUDA GPU 的优化和利用

java.lang.NoClassDefFoundError : org/apache/http/client/config/RequestConfig 错误