我有一个我似乎无法掌握的问题。
我的相关代码是
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/