`
micc010
  • 浏览: 73044 次
  • 性别: Icon_minigender_1
  • 来自: 广西
社区版块
存档分类
最新评论

httpclient

阅读更多
public String doGet(String url, Map params) {

 /* 建立HTTPGet对象 */

 String paramStr = "";

 Iterator iter = params.entrySet().iterator();
 while (iter.hasNext()) {
 Map.Entry entry = (Map.Entry) iter.next();
 Object key = entry.getKey();
 Object val = entry.getValue();
 paramStr += paramStr = "&" + key + "=" + val;
 }

 if (!paramStr.equals("")) {
 paramStr = paramStr.replaceFirst("&", "?");
 url += paramStr;
 }
 HttpGet httpRequest = new HttpGet(url);

 String strResult = "doGetError";

 try {

 /* 发送请求并等待响应 */
 HttpResponse httpResponse = httpClient.execute(httpRequest);
 /* 若状态码为200 ok */
 if (httpResponse.getStatusLine().getStatusCode() == 200) {
 /* 读返回数据 */
 strResult = EntityUtils.toString(httpResponse.getEntity());

 } else {
 strResult = "Error Response: "
 + httpResponse.getStatusLine().toString();
 }
 } catch (ClientProtocolException e) {
 strResult = e.getMessage().toString();
 e.printStackTrace();
 } catch (IOException e) {
 strResult = e.getMessage().toString();
 e.printStackTrace();
 } catch (Exception e) {
 strResult = e.getMessage().toString();
 e.printStackTrace();
 }

 Log.v("strResult", strResult);

 return strResult;
 }


public String doPost(String url, List<NameValuePair> params) {

 /* 建立HTTPPost对象 */
 HttpPost httpRequest = new HttpPost(url);

 String strResult = "doPostError";

 try {
 /* 添加请求参数到请求对象 */
 httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
 /* 发送请求并等待响应 */
 HttpResponse httpResponse = httpClient.execute(httpRequest);
 /* 若状态码为200 ok */
 if (httpResponse.getStatusLine().getStatusCode() == 200) {
 /* 读返回数据 */
 strResult = EntityUtils.toString(httpResponse.getEntity());

 } else {
 strResult = "Error Response: "
 + httpResponse.getStatusLine().toString();
 }
 } catch (ClientProtocolException e) {
 strResult = e.getMessage().toString();
 e.printStackTrace();
 } catch (IOException e) {
 strResult = e.getMessage().toString();
 e.printStackTrace();
 } catch (Exception e) {
 strResult = e.getMessage().toString();
 e.printStackTrace();
 }

 Log.v("strResult", strResult);

 return strResult;
 }


public HttpClient getHttpClient() {

 // 创建 HttpParams 以用来设置 HTTP 参数(这一部分不是必需的)

 this.httpParams = new BasicHttpParams();

 // 设置连接超时和 Socket 超时,以及 Socket 缓存大小

 HttpConnectionParams.setConnectionTimeout(httpParams, 20 * 1000);

 HttpConnectionParams.setSoTimeout(httpParams, 20 * 1000);

 HttpConnectionParams.setSocketBufferSize(httpParams, 8192);

 // 设置重定向,缺省为 true

 HttpClientParams.setRedirecting(httpParams, true);

 // 设置 user agent

 String userAgent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2) Gecko/20100115 Firefox/3.6";
 HttpProtocolParams.setUserAgent(httpParams, userAgent);

 // 创建一个 HttpClient 实例

 // 注意 HttpClient httpClient = new HttpClient(); 是Commons HttpClient

 // 中的用法,在 Android 1.5 中我们需要使用 Apache 的缺省实现 DefaultHttpClient

 httpClient = new DefaultHttpClient(httpParams);

 return httpClient;
 }

分享到:
评论

相关推荐

    httpclient.jar包下载

    《深入解析httpclient.jar及其与code.jar的关联》 在Java开发中,HTTP通信是不可或缺的一部分,而Apache HttpClient库正是Java实现HTTP客户端操作的重要工具。本文将深入探讨httpclient.jar包,以及它与code.jar包...

    HttpClient4.2.1版本的Jar包

    HttpClient 4.2.1版本引入了一些重要的改进和修复,以提高性能和稳定性。以下是一些关键特性: 1. **连接管理**:HttpClient 4.2.1引入了更完善的连接管理机制,允许开发者控制连接的创建、复用和关闭。`...

    httpclient官网教程中文版

    ### Httpclient官网教程中文版知识点总结 #### 一、引言 HTTP协议作为互联网的核心通信标准之一,在现代网络服务及物联网设备中扮演着至关重要的角色。随着技术的发展,越来越多的应用和服务依赖于HTTP协议来实现...

    HttpClient 3.x to HttpComponents HttpClient 4.x

    例如,在HttpClient 3.x中,代码可能会使用`***mons.httpclient.HttpClient`类和`***mons.httpclient.methods.GetMethod`等,而在4.x版本中,这些都被新的API所替代。程序员需要熟悉`org.apache....

    httpclient-4.2.5-API文档-中文版.zip

    赠送jar包:httpclient-4.2.5.jar; 赠送原API文档:httpclient-4.2.5-javadoc.jar; 赠送源代码:httpclient-4.2.5-sources.jar; 赠送Maven依赖信息文件:httpclient-4.2.5.pom; 包含翻译后的API文档:httpclient...

    httpclient4.2.1.zip

    本文将深入探讨HttpClient 4.2.1的核心特性和使用方法,帮助开发者更好地理解和应用这个强大的工具。 一、HttpClient简介 HttpClient是一个开放源码的Java库,由Apache软件基金会维护。它为Java程序员提供了一个...

Global site tag (gtag.js) - Google Analytics