java HttpClient:我可以通过多个线程安全地重用不同域的HttpContext吗?
我是否可以安全地重用HttpClientContext来通过多个线程存储不同域的cookie,或者为每个域创建一个上下文更好,或者更窄一些,为每个域的每个线程创建一个上下文
我想象的是,它的行为就像一个浏览器,可以为每个域处理cookies,并且可以在源于相同或不同域的页面上打开多个选项卡
以下是我如何只启动一次上下文,以便多线程重用:
HttpClientContext context = HttpClientContext.create();
context.setCookieStore(this.createCookieStore());
我也在使用最新版本的HttpClient
# 1 楼答案
不,你不能。即使
HttpClientContext
实例本身是安全的,它也可能包含不安全的上下文属性但是,您可以安全地使不同的
HttpClientContext
实例共享相同的CookieStore
实例,从而共享相同的HTTP状态