默认上下文由HttpClient
您正在使用的实现配置。对于基于 的实现AbstractHttpClient
,工作由createHttpContext()
方法完成。execute
请注意,每次调用都会创建一个新的默认上下文。
自己配置默认上下文的一种方法是扩展现有HttpClient
实现类之一并覆盖该方法。
另一种方法是设置方法使用的各种参数;例如,连接管理器的方案注册表、authScheme 注册表、cookieSpecs 注册表、cookie 存储或凭据提供程序。
为了记录,这是做什么的DefaultHttpClient.createHttpContext()
:
@Override
protected HttpContext createHttpContext() {
HttpContext context = new BasicHttpContext();
context.setAttribute(
ClientContext.SCHEME_REGISTRY,
getConnectionManager().getSchemeRegistry());
context.setAttribute(
ClientContext.AUTHSCHEME_REGISTRY,
getAuthSchemes());
context.setAttribute(
ClientContext.COOKIESPEC_REGISTRY,
getCookieSpecs());
context.setAttribute(
ClientContext.COOKIE_STORE,
getCookieStore());
context.setAttribute(
ClientContext.CREDS_PROVIDER,
getCredentialsProvider());
return context;
}