我有一个我似乎无法理解的问题。 我的相关代码是
final Builder requestConfigBuilder = RequestConfig.custom();
...
final HttpClientBuilder clientBuilder = HttpClientBuilder.create();
clientBuilder.setDefaultCookieStore();
clientBuilder.setDefaultRequestConfig(requestConfigBuilder.build());
...
如果我使用从我的构建器获得的这个客户端,我可以看到我的请求中发送的所有 cookie,正如我所期望的那样。 但是,添加 cookie 规范,如下所示:
final Builder requestConfigBuilder = RequestConfig.custom();
...
requestConfigBuilder.setCookieSpec(CookieSpecs.DEFAULT); //this causes problems
final HttpClientBuilder clientBuilder = HttpClientBuilder.create();
clientBuilder.setDefaultCookieStore(someCookieStoreVariable);
clientBuilder.setDefaultRequestConfig(requestConfigBuilder.build());
...
我发现我的请求中没有发送任何 cookie。无论我从 CookieSpecs 选择哪个规范,结果都是一样的。
我是否误解或误用了它,为什么它不起作用?我设置另一个 cookiestore 有问题吗?我确实需要它以备将来引用,所以它必须保留。
最佳答案
检查cookie域和路径是否设置正确。
关于java - 选择任何 CookieSpec 都会删除请求中的所有 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34807316/