AndroidHttpClient c = AndroidHttpClient.newInstance(""); BasicHttpContext context = new BasicHttpContext(); context.setAttribute(ClientContext.COOKIE_STORE, new BasicCookieStore()); try { c.execute(null, context); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }其中的context在client发送的请求的时候,同时发送即可。发送请求方法的第一个参数,很重要,下面详解。
try { final String _URI = "www.baidu.com"; HttpGet requestGet = new HttpGet(); requestGet.setURI(new URI(_URI));} catch (URISyntaxException e) { // TODO Auto-generated catch block e.printStackTrace();}
try {final String _URI = "www.baidu.com";HttpGet requestGet = new HttpGet(new URI(_URI));} catch (URISyntaxException e) {// TODO Auto-generated catch blocke.printStackTrace();}
Android HttpClient调用示例
1. GET
//先将参数放入List,再对参数进行URL编码List<BasicNameValuePair> params = new LinkedList<BasicNameValuePair>();params.add(new BasicNameValuePair("param1", "中国"));params.add(new BasicNameValuePair("param2", "value2"));//对参数编码String param = URLEncodedUtils.format(params, "UTF-8");//baseUrl String baseUrl = "http://ubs.free4lab.com/php/method.php";//将URL与参数拼接HttpGet getMethod = new HttpGet(baseUrl + "?" + param);HttpClient httpClient = new DefaultHttpClient();try { HttpResponse response = httpClient.execute(getMethod); //发起GET请求 Log.i(TAG, "resCode = " + response.getStatusLine().getStatusCode()); //获取响应码 Log.i(TAG, "result = " + EntityUtils.toString(response.getEntity(), "utf-8"));//获取服务器响应内容} catch (ClientProtocolException e) { // TODO Auto-generated catch block e.printStackTrace();} catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace();}2. POST
//和GET方式一样,先将参数放入Listparams = new LinkedList<BasicNameValuePair>();params.add(new BasicNameValuePair("param1", "Post方法"));params.add(new BasicNameValuePair("param2", "第二个参数"));try { HttpPost postMethod = new HttpPost(baseUrl); postMethod.setEntity(new UrlEncodedFormEntity(params, "utf-8")); //将参数填入POST Entity中 HttpResponse response = httpClient.execute(postMethod); //执行POST方法 Log.i(TAG, "resCode = " + response.getStatusLine().getStatusCode()); //获取响应码 Log.i(TAG, "result = " + EntityUtils.toString(response.getEntity(), "utf-8")); //获取响应内容} catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace();} catch (ClientProtocolException e) { // TODO Auto-generated catch block e.printStackTrace();} catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace();}