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 ; } }

2、异步请求

 1 /** 2  * 异步请求  3  * @author admin  4      */ 5     class GetData extends AsyncTask< String , Integer , String >{  6  7  @Override  8         protected String doInBackground(String... params) {  9             HttpUtil httpUtil = new HttpUtil() ; 10             String resutl = httpUtil.httpGet( params[0] ) ; 11             if( resutl == null ){ 12                 return "" ; 13  } 14             return resutl ; 15  } 16 17  @Override 18         protected void onPostExecute(String result) { 19             super.onPostExecute(result); 20  } 21     }

Android Http请求框架二:xUtils 框架网络请求

更多相关文章

  1. Android 数据存储(数据库、文件、参数)操作实例
  2. Android中使用Parcelable传递对象,createFromParcel中对象的赋值
  3. Android 热补丁动态修复框架小结
  4. android客户端通过Get方式提交参数给服务器,使用URL和HttpURLConn
  5. Activity之间传递类对象
  6. 【Android 开源系列】之缓存框架
  7. Android Bundle传递对象
  8. 看Android 應用框架原理與程式設計36 技有感。

随机推荐

  1. Android动画学习笔记-Android(安卓)Anima
  2. Android编译报Errors running builder 'A
  3. 使用Android(安卓)Studio打包指定名称的A
  4. Android项目---语言适配
  5. 【北亚服务器数据恢复】ocfs2被误格式化
  6. 头颈肩如何学画?动漫女生的头颈肩画法
  7. CentOS停更;阿里发布全新操作系统(Anolis O
  8. Composer 国内加速镜像
  9. 使用php操作xml教程
  10. 实例分析php常量和变量的不同