这个类位于 org.apache.http.client.config包下,主要用于获取和配置一些外部的网络环境,它下面有一个嵌套类 RequestConfig.Builder,顾名思义,它肯定是用来配置网络环境的(姑且叫它“配置器”吧)。其使用方法是:先用 RequestConfig类的静态方法custom()获取equestConfig.Builder“配置器”,然后再用其下各种方法配置网络环境;或者已经有配置好的RequestConfig对象(非RequestConfig.Builder)而将此对象拷贝(RequestConfig类的 copy()方法)过来返回“配置器“而重新进行其它的网络环境的配置。最终,再调用配置器的buillder()方法返回RequestConfig对象。
配置好请求信息之后,那么接下的问题就是将配置好请求信息附加到http请求中
http://www.xjweb88.com/thread-42-1-1.html
RequestConfig defaultRequestConfig = RequestConfig.custom()
.setCookieSpec(CookieSpecs.BEST_MATCH)
.setExpectContinueEnabled(true)
.setStaleConnectionCheckEnabled(true)
.setTargetPreferredAuthSchemes(Arrays.asList(AuthSchemes.NTLM, AuthSchemes.DIGEST))
.setProxyPreferredAuthSchemes(Arrays.asList(AuthSchemes.BASIC))
.build();
RequestConfig requestConfig = RequestConfig.copy(defaultRequestConfig)
.setSocketTimeout(5000)
.setConnectTimeout(5000)
.setConnectionRequestTimeout(5000)
.setProxy(new HttpHost("myotherproxy", 8080))
.build();
配置好请求信息之后,那么接下的问题就是将配置好请求信息附加到http请求中
HttpGet httpget = new HttpGet("http://www.xjweb88.com");
httpget.setConfig(requestConfig);
RequestConfig.Buillder配置中的方法
setAuthenticationEnabled(boolean authenticationEnabled)
setCircularRedirectsAllowed(boolean circularRedirectsAllowed)
setConnectionRequestTimeout(int connectionRequestTimeout)
setConnectTimeout(int connectTimeout)
setCookieSpec(String cookieSpec)
setExpectContinueEnabled(boolean expectContinueEnabled)
setLocalAddress(InetAddress localAddress)
setMaxRedirects(int maxRedirects)
setProxy(HttpHost proxy)
setProxyPreferredAuthSchemes(Collection proxyPreferredAuthSchemes)
setRedirectsEnabled(boolean redirectsEnabled)
setRelativeRedirectsAllowed(boolean relativeRedirectsAllowed)
setSocketTimeout(int socketTimeout)
setStaleConnectionCheckEnabled(boolean staleConnectionCheckEnabled)
setTargetPreferredAuthSchemes(Collection targetPreferredAuthSchemes)
build()
RequestConfig类中的方法
getConnectionRequestTimeout()
getConnectTimeout()
getCookieSpec()
getLocalAddress()
getMaxRedirects()
getProxy()
getProxyPreferredAuthSchemes()
getSocketTimeout()
getTargetPreferredAuthSchemes()
isAuthenticationEnabled()
isCircularRedirectsAllowed()
isExpectContinueEnabled()
isRedirectsEnabled()
isRelativeRedirectsAllowed()
isStaleConnectionCheckEnabled()
toString()
http://www.xjweb88.com/thread-42-1-1.html