Android通过httpClient获取网络请求
在HttpClient模块中用到了两个重要的类:HttpGet和HttpPost。这两个类分别用来提交HTTP GET和HTTP POST请求。
无论是使用HttpGet,还是使用HttpPost,都必须通过如下3步来访问HTTP资源。
- 1.创建HttpGet或HttpPost对象,将要请求的URL通过构造方法传入HttpGet或HttpPost对象。
- 2.使用DefaultHttpClient类的execute方法发送HTTP GET或HTTP POST请求,并返回HttpResponse对象。
- 3.通过HttpResponse接口的getEntity方法返回响应信息,并进行相应的处理。(判断请求响应状态码,状态码为200表示服务端成功响应了客户端的请求。
响应状态码含义
- ◆200 (OK): 找到了该资源,并且一切正常。
- ◆304 (NOT MODIFIED): 该资源在上次请求之后没有任何修改。这通常用于浏览器的缓存机制。
- ◆401 (UNAUTHORIZED): 客户端无权访问该资源。这通常会使得浏览器要求用户输入用户名和密码,以登录到服务器。
- ◆403 (FORBIDDEN): 客户端未能获得授权。这通常是在401之后输入了不正确的用户名或密码。
- ◆404 (NOT FOUND): 在指定的位置不存在所申请的资源。
)。
Http请求时要添加权限!!!
找了一下午真是活该!
没加权限竟然。
07-18 09:05:31.824 1781-1794/com.zsz.develop.myrobot E/AndroidRuntime﹕ FATAL EXCEPTION: AsyncTask #1
java.lang.RuntimeException: An error occured while executing doInBackground()
错误行数在
httpResponse= httpClient.execute(httpGet);
和
public class HttpData extends AsyncTask<String, Void, String> {
下回涨点记性