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

Java - Http异步工具包(HttpClient实现)

2013-07-13 17:22 351 查看
前段时间在做Android的新浪微博客户端,发现新浪给的SDK里面有Http异步操作的相关代码,使用的Apach HttpComponents
Client,阅读新浪SDK中的源码后 感觉很不错,收获颇丰,提取出来备用,去除了Android和新浪微博相关的部分,修改成纯Java的版本。

我提取修改后共有5个类:
HttpUtility这是一个工具类,对url和parameters进行encode操作
HttpManager这是整个工具包最重要的类,使用 openUrl 这个函数可以获得URL返回的结果
HttpParameters这是一个HTTP的参数类,可以通过add(),remove()等操作轻松的使用
HttpAsyncRunner这是一个异步请求类,使用该异步包 我们不直接使用HttpManager,而使用HttpAsyncRunner.request()
HttpRequestListener这是一个接口,封装了两个回调函数,分别对应 请求成功 和 请求错误。
使用方法:

HttpAsyncRunner.request(String url, HttpParameters parameters, "GET", new HttpRequestListener() {

			@Override
			public void onIOException(IOException e) {
				// IO 错误
			}

			@Override
			public void onComplete(String response) {
				// 请求成功
				System.out.println(response);
			}
		});


tips:
1. 新浪的源码中含有图片上传的功能 openUrl(String url, String method, HttpParameters params, String file) ,实际开发中可能需要相应的修改,童鞋看着修改一下就行了、
2. 纯Java的代码,在Java程序中需要导入对应的包,Android自带了HttpComponents Client的代码,就不需要导入了。

下载地址:http://download.csdn.net/detail/lyl_studio/5748027
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: