HttpClient和HttpResponse的使用
来源:互联网 发布:php curl模拟post提交 编辑:程序博客网 时间:2024/06/12 01:13
HttpClient :发起Http连接请求的对象,
HttpResponse :Http 请求返回的响应。
总的设计思路如下:
发送请求:(HttpResponse)response=(HttpClient)client.execute((HttpGet)request);
获取响应数据:response.getEntity().getContent();
简单的示例举例如下,主要实现获取www.baidu.com的内容: 特别注意要在AndroidManifest.xml添加访问网络的权限!!!
MainActivity.java
package com.android.httpclient;import java.io.BufferedReader;import java.io.InputStreamReader;import java.net.URI;import java.net.URISyntaxException;import org.apache.http.HttpResponse;import org.apache.http.client.HttpClient;import org.apache.http.client.methods.HttpGet;import org.apache.http.impl.client.DefaultHttpClient;import android.app.Activity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;public class MainActivity extends Activity { /** Called when the activity is first created. */private Button btn;private TextView tv;private String content = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btn = (Button) findViewById(R.id.button1); tv = (TextView) findViewById(R.id.textView1); btn.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubHttpClient client = new DefaultHttpClient();HttpGet request = new HttpGet("http://www.baidu.com/");try{HttpResponse response = client.execute(request);BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));for(String s = reader.readLine(); s != null; s = reader.readLine()){content += s;}tv.setText(content);}catch (Exception e){e.printStackTrace();}} }); }}
main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /><Button android:text="Button" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button><TextView android:text="TextView" android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView></LinearLayout>
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.httpclient" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="1" /><uses-permission android:name="android.permission.INTERNET"/> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
- HttpClient和HttpResponse的使用
- Android联网使用HttpClient 和HttpResponse 小结
- Android之HttpClient 和HttpResponse 小结
- HttpClient,HttpRequest,HttpResponse
- HttpClient包里面不包含HttpResponse的问题
- 服务器的两个对象:HttpResponse和HttpRequest
- Django的HttpRequest和HttpResponse对象
- httprequest跳转和httpresponse跳转的区别
- HttpURLConnection和HttpClient的使用
- HttpClient 和 HttpURLConnection 的使用
- HttpClient的使用和封装
- 使用httpClient报错,The type org.apache.http.HttpResponse cannot be resolved
- HttpClient get请求在HttpResponse中无法获得Location的问题
- HttpClient get请求在HttpResponse中无法获得Location的问题
- 如何解决httpResponse = httpClient.execute(httpGet);无法执行的问题?
- HttpClient get请求在HttpResponse中无法获得Location的问题
- HttpClient和HttpURLConnection的使用和区别
- Servlet HttpRequest和HttpResponse
- 在 Linux 的应用中测试中的延时和丢包模拟
- 随笔
- JAVA :Jpanel 控件 无法显示问题
- c#时间获取和表示格式
- Android 底层按键获取
- HttpClient和HttpResponse的使用
- poj 3624 裸的01背包
- Web基础之Javascript 进阶
- 调用函数求阶乘。
- android应用基础
- 更改iTunes的设备备份路径
- UVa 10591 - Happy Number
- Struts2.3.4 、Hibernate3.6 和Spring3.1.2整合所需jar包列表
- bmp图像 蓝桥杯