httpclient 如何保持会话
2014-03-17 23:39
337 查看
在实际的应用中,我们的联网应用程序里应该有一个HttpClient,并将其用于所有的HTTP通信。这就可能在同一个Http Client同时发出多个请求,也就产生了多线程的问题。幸运的是,在HttpClient里提供了一些工具来简化了这一个任务。下面我们看看使用ThreadSafeClientConnManager来创建DefaultHttpClient
private HttpClient createHttpClient(){
HttpParams params = new BasicHttpParams();
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
HttpProtocolParams.setContentCharset(params, HTTP.DEFAULT_CONTENT_CHARSET);
HttpProtocolParams.setUseExpectContinue(params, true);
SchemeRegistry schReg = new SchemeRegistry();
schReg.register(new Scheme("http",PlainSocketFactory.getSocketFactory(),80));
schReg.register(new Scheme("https",PlainSocketFactory.getSocketFactory(),433));
ClientConnectionManager conMgr = new ThreadSafeClientConnManager(params,schReg);
return new DefaultHttpClient(conMgr,params);
};
这样就完成了多线程的HttpClient的创建.
httpClient 想要保持回话,每一次连接时候 都必须是同一个 httpClient,也就是说 你第一次登陆时候使用的httpClient 和以后再次访问使用的httpClient必须是同一个。
private HttpClient createHttpClient(){
HttpParams params = new BasicHttpParams();
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
HttpProtocolParams.setContentCharset(params, HTTP.DEFAULT_CONTENT_CHARSET);
HttpProtocolParams.setUseExpectContinue(params, true);
SchemeRegistry schReg = new SchemeRegistry();
schReg.register(new Scheme("http",PlainSocketFactory.getSocketFactory(),80));
schReg.register(new Scheme("https",PlainSocketFactory.getSocketFactory(),433));
ClientConnectionManager conMgr = new ThreadSafeClientConnManager(params,schReg);
return new DefaultHttpClient(conMgr,params);
};
这样就完成了多线程的HttpClient的创建.
httpClient 想要保持回话,每一次连接时候 都必须是同一个 httpClient,也就是说 你第一次登陆时候使用的httpClient 和以后再次访问使用的httpClient必须是同一个。
相关文章推荐
- HttpClient4.5.2 使用cookie保持会话——如何传递多个cookie(3)
- HttpClient4.5.2 使用cookie保持会话——获取cookie之后如何传递它(2)
- HttpClient4.5.2 使用cookie保持会话——获取cookie之后如何传递它
- Java:HttpClient篇,HttpClient4.2在Java中的几则应用:Get、Post参数、Session(会话)保持、Proxy(代理服务器)设置,多线程设置...
- HttpClient4.x 使用cookie保持会话
- HttpClient4.x 使用cookie保持会话
- HttpClient 模拟登陆,保持会话并进行后续操作
- httpclient 保持会话的交互
- HttpClient接口测试之会话保持
- Java:HttpClient篇,HttpClient4.2在Java中的几则应用:Get、Post参数、Session(会话)保持、Proxy(代理服务器)设置,多线程设置...
- HttpWebRequest提交数据后如何保持会话状态?
- HttpClient 模拟登陆,保持会话并进行后续操作
- httpclient妙用二 httpclient保持会话登录
- httpclient 保持会话的交互
- HttpClient4.x 使用cookie保持会话
- Android WebView 与OkhttpClient登录状态保持一致,建立SESSION会话
- Httpclient的会话保持引起的线程安全问题
- Java:HttpClient篇,HttpClient4.2在Java中的几则应用:Get、Post参数、Session(会话)保持、Proxy(代理服务器)设置,多线程设置...
- HttpClient4.5.2 使用cookie保持会话——获取cookie
- 如何保持http会话