android网络编程——http post 和 http get

[java]  view plain copy print ?
  1. public class HttpPostDemo extends Activity {  
  2.     /** Called when the activity is first created. */  
  3.     @Override  
  4.     public void onCreate(Bundle savedInstanceState) {  
  5.         super.onCreate(savedInstanceState);  
  6.         setContentView(R.layout.main);  
  7.   
  8.         BufferedReader in = null;  
  9.         try {  
  10.             HttpClient client = new DefaultHttpClient();  
  11.             HttpPost request = new HttpPost("http://mysomewebsite.com/services/doSomething.do");  
  12.             List<NameValuePair> postParameters = new ArrayList<NameValuePair>();  
  13.             postParameters.add(new BasicNameValuePair("username""test"));  
  14.             postParameters.add(new BasicNameValuePair("password""test1234"));  
  15.             UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(  
  16.                     postParameters);  
  17.   
  18.             request.setEntity(formEntity);  
  19.             HttpResponse response = client.execute(request);  
  20.             in = new BufferedReader(  
  21.                     new InputStreamReader(  
  22.                             response.getEntity().getContent()));  
  23.   
  24.             StringBuffer sb = new StringBuffer("");  
  25.             String line = "";  
  26.             String NL = System.getProperty("line.separator");  
  27.             while ((line = in.readLine()) != null) {  
  28.                 sb.append(line + NL);  
  29.             }  
  30.             in.close();  
  31.   
  32.             String result = sb.toString();  
  33.             System.out.println(result);  
  34.         } catch(Exception e) {  
  35.             // Do something about exceptions  
  36.         } finally {  
  37.             if (in != null) {  
  38.                 try {  
  39.                     in.close();  
  40.                 } catch (IOException e) {  
  41.                     e.printStackTrace();  
  42.                 }  
  43.             }  
  44.         }  
  45.     }  
  46. }  


HtttpGet 请求

在Android SDK中提供了Apache HttpClient(org.apache.http.*)模块。在这个模块中涉及到两个重要的类:HttpGet和HttpPost。这一篇一个实例给出httpGet的使用方法:

[java]  view plain copy print ?
  1. public class HttpGetDemo extends Activity {  
  2.     /** Called when the activity is first created. */  
  3.     @Override  
  4.     public void onCreate(Bundle savedInstanceState) {  
  5.         super.onCreate(savedInstanceState);  
  6.         setContentView(R.layout.main);  
  7.   
  8.         BufferedReader in = null;  
  9.         try {  
  10.             HttpClient client = new DefaultHttpClient();  
  11.             HttpGet request = new HttpGet("http://www.baidu.com");  
  12.             HttpResponse response = client.execute(request);  
  13.             in = new BufferedReader(  
  14.                     new InputStreamReader(  
  15.                         response.getEntity().getContent()));  
  16.   
  17.             StringBuffer sb = new StringBuffer("");  
  18.             String line = "";  
  19.             String NL = System.getProperty("line.separator");  
  20.             while ((line = in.readLine()) != null) {  
  21.                 sb.append(line + NL);  
  22.             }  
  23.             in.close();  
  24.   
  25.             String page = sb.toString();  
  26.             System.out.println(page);  
  27.         } catch (Exception e) {  
  28.             // TODO Auto-generated catch block  
  29.             e.printStackTrace();  
  30.         } finally {  
  31.             if (in != null) {  
  32.                 try {  
  33.                     in.close();  
  34.                 } catch (IOException e) {  
  35.                     e.printStackTrace();  
  36.                 }  
  37.             }  
  38.         }  
  39.     }  
  40. }  


 在Android SDK中提供了Apache HttpClient(org.apache.http.*)模块。在这个模块中涉及到两个重要的类:HttpGet和HttpPost,他们有共性也有不同。


HttpGet和HttpPost创建方式相同:

    1、创建HttpGet(或HttpPost)对象,将要请求的URL通过构造方法传入HttpGet(或HttpPost)对象中;
    2、使用DefaultHttpClient类的execute方法发送HTTP GET或HTTP POST 请求,并返回HttpResponse对象;
    3、通过HttpResponse接口的getEntity方法返回响应信息。

HttpGet和HttpPost不同点,HttpPost在使用是需要传递参数 ,使用List<NameValuePair>添加参数。


[java]  view plain copy print ?
  1. <span style="font-weight: normal;">   List<NameValuePair> postParameters = new ArrayList<NameValuePair>();    
  2.    postParameters.add(new BasicNameValuePair("username""test"));    
  3.    postParameters.add(new BasicNameValuePair("password""test1234"));</span>  








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值