java发送http get请求的两种方式
2017-05-26 08:46
666 查看
长话短说,废话不说
一、第一种方式,通过HttpClient方式,代码如下:
public static String httpGet(String url, String charset) throws HttpException, IOException { String json = null; HttpGet httpGet = new HttpGet(); // 设置参数 try { httpGet.setURI(new URI(url)); } catch (URISyntaxException e) { throw new HttpException("请求url格式错误。"+e.getMessage()); } // 发送请求 HttpResponse httpResponse = client.execute(httpGet); // 获取返回的数据 HttpEntity entity = httpResponse.getEntity(); byte[] body = EntityUtils.toByteArray(entity); StatusLine sL = httpResponse.getStatusLine(); int statusCode = sL.getStatusCode(); if (statusCode == 200) { json = new String(body, charset); entity.consumeContent(); } else { throw new HttpException("statusCode="+statusCode); } return json; }
二、第二种方式,通过流的形式,贴代码:
/** * 发送http get请求 * * @param getUrl * @return */ public String sendGetRequest(String getUrl) { StringBuffer sb = new StringBuffer(); InputStreamReader isr = null; BufferedReader br = null; try { URL url = new URL(getUrl); URLConnection urlConnection = url.openConnection(); urlConnection.setAllowUserInteraction(false); isr = new InputStreamReader(url.openStream()); br = new BufferedReader(isr); String line; while ((line = br.readLine()) != null) { sb.append(line); } } catch (IOException e) { e.printStackTrace(); } finally { fileOperator.closeResources(isr, br); } return sb.toString(); } }
这两种实现方式不同,怎么使用看个人喜好吧,不过我在项目开发过程中,使用流的方式部署在预发机(linux机器)上会出现返回null的情况,但是本地windows却正常访问,而且,换另外一台预发机也能正常获取数据,目前还没有研究出个所以然。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章推荐
- java发送http的两种请求方式——get、post
- java发送http get请求的两种方式
- Java发送HTTP的POST和GET方式请求
- java发送post和get请求(1)---HttpClient 方式
- HttpClient详解,Java发送Http的post、get方式请求 --待整理
- java发送post和get请求(1)---HttpURLConnection方式
- java发送http get请求的两种方法(总结)
- 多种方式实现(jdk原生api实现/httpClient的实现) java 发送http(post/get)请求并携带参数(讲解超详细)
- java 用面向对象的方式发送http的GET和POST请求
- java发送http的get、post请求
- java 发送http请求post get
- C# wnform 请求http ( get , post 两种方式 )
- java发送http的get、post请求
- java apache commons HttpClient发送get和post请求的学习整理(转)
- Android中post和get两种方式发送请求
- JAVA Socket 实现HTTP与HTTPS客户端发送POST与GET方式请求
- java发送http的get、post请求
- JAVA Socket 实现HTTP与HTTPS客户端发送POST与GET方式请求
- JAVA Socket 实现HTTP与HTTPS客户端发送POST与GET方式请求
- java发送http的get、post请求