一.Get请求
/** * 通过httpclient到指定的uri来get数据 */ public static String getData(String url){ HttpClient httpClient = new HttpClient(); //设置代理 httpClient.getHostConfiguration().setProxy(Config.getProxyHost(), Config.getProxyPort()); GetMethod getMethod = new GetMethod(url); //get指定url的数据 try { int status = httpClient.executeMethod(getMethod); if (status == HttpStatus.SC_OK) { //请求url后,服务器返回的执行状态 return getMethod.getResponseBodyAsString(); }else{ return null; } } catch (Exception e) { throw new RuntimeException(e); } }
二.Post请求
/** * 通过httpclient send数据到指定的url【无参数类型】 */ @SuppressWarnings("deprecation") public static String sendData(String url, String content){ HttpClient httpClient = new HttpClient(); //设置代理 httpClient.getHostConfiguration().setProxy(Config.getProxyHost(), Config.getProxyPort()); //post数据到该url PostMethod postMethod = new PostMethod(url); //设置参数编码为gbk postMethod.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET,"gbk"); // 无参数类型,把内容放入postMethod中 postMethod.setRequestBody(content); try { //执行 int status = httpClient.executeMethod(postMethod); return postMethod.getResponseBodyAsString(); } catch (Exception e) { throw new RuntimeException(e); } }
/** * 通过httpclient send数据到指定的url【含参数类型】 */ @SuppressWarnings("deprecation") public static String sendData(String url){ HttpClient httpClient = new HttpClient(); //设置代理 httpClient.getHostConfiguration().setProxy(Config.getProxyHost(), Config.getProxyPort()); //post数据到该url PostMethod postMethod = new PostMethod(url); //设置参数编码为gbk postMethod.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET,"gbk"); //有参数类型,需要设置构造键值对参数 NameValuePair[] data = { new NameValuePair("id", "10"), new NameValuePair("name", "Helen") }; // 把参数值放入postMethod中 postMethod.setRequestBody(data); try { //执行 int status = httpClient.executeMethod(postMethod); return postMethod.getResponseBodyAsString(); } catch (Exception e) { throw new RuntimeException(e); } }
时间: 2024-10-22 21:22:37