你的位置:首页 > 软件开发 > 操作系统 > Android Http请求框架一:Get 和 Post 请求

Android Http请求框架一:Get 和 Post 请求

发布时间:2015-07-07 21:00:12
1、HttpUtilpackage com.app.android01;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.Input ...

1、HttpUtil

package com.app.android01;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.URL;import java.util.ArrayList;import java.util.List;import org.apache.http.HttpResponse;import org.apache.http.NameValuePair;import org.apache.http.client.ClientProtocolException;import org.apache.http.client.HttpClient;import org.apache.http.client.entity.UrlEncodedFormEntity;import org.apache.http.client.methods.HttpPost;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.message.BasicNameValuePair;import org.apache.http.params.CoreConnectionPNames;import org.apache.http.protocol.HTTP;import org.apache.http.util.EntityUtils;public class HttpUtil {  /**   * get请求   * @param httpUrl   * @return   * @throws    */  public String httpGet( String httpUrl ){    String result = "" ;    try {      BufferedReader reader = null;      StringBuffer sbf = new StringBuffer() ;      URL url = new URL( httpUrl ) ;      HttpURLConnection connection = (HttpURLConnection) url.openConnection() ;      //设置超时时间 10s      connection.setConnectTimeout(10000);       //设置请求方式      connection.setRequestMethod( "GET" ) ;      connection.connect();      InputStream is = connection.getInputStream() ;      reader = new BufferedReader(new InputStreamReader( is , "UTF-8" )) ;      String strRead = null ;      while ((strRead = reader.readLine()) != null) {        sbf.append(strRead);        sbf.append("\r\n");      }      reader.close();      result = sbf.toString();    } catch (Exception e) {      e.printStackTrace();    }    return result;  }  /**   * httpPost请求   * @param httpUrl   * @return   */  public String httpPost( String httpUrl ){    String result = "" ;    // 第一步,创建HttpPost对象     HttpPost httpPost = new HttpPost( httpUrl );     // 设置HTTP POST请求参数必须用NameValuePair对象     List<NameValuePair> params = new ArrayList<NameValuePair>();     params.add(new BasicNameValuePair("action", "downloadAndroidApp"));     params.add(new BasicNameValuePair("packageId", "89dcb664-50a7-4bf2-aeed-49c08af6a58a"));     params.add(new BasicNameValuePair("uuid", "test_ok1"));     HttpResponse httpResponse = null;     try {       // 设置httpPost请求参数       httpPost.setEntity(new UrlEncodedFormEntity( params , HTTP.UTF_8 ));       HttpClient httpClient = new DefaultHttpClient() ;      // 请求超时 10s      httpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 10000 ) ;      // 读取超时 10s      httpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 10000 );      httpResponse = httpClient.execute( httpPost ) ;       if (httpResponse.getStatusLine().getStatusCode() == 200) {         // 第三步,使用getEntity方法活得返回结果         result = EntityUtils.toString(httpResponse.getEntity());       }     } catch (ClientProtocolException e) {       e.printStackTrace();     } catch (IOException e) {       e.printStackTrace();     }     return result ;  } }

原标题:Android Http请求框架一:Get 和 Post 请求

关键词:Android

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录