您的位置:首页 > 理论基础 > 计算机网络

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必须是同一个。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: