长话短说,废话不说
<强>一、第一种方式>强,通过HttpClient方式,代码如下:
httpGet公共静态字符串(字符串url字符串字符集) 将textbox, IOException { json字符串=零; HttpGet HttpGet=new HttpGet ();//设置参数 尝试{ httpGet。setURI(新URI (url)); }捕捉(URISyntaxException e) { 把新textbox(“请求url格式错误。”+ e.getMessage ()); }//发送请求 HttpResponse HttpResponse=client.execute (httpGet);//获取返回的数据 HttpEntity实体=httpResponse.getEntity (); 身体byte []=EntityUtils.toByteArray(实体); 状态栏sL=httpResponse.getStatusLine (); int statusCode=sL.getStatusCode (); 如果(statusCode==200) { json=新的字符串(身体、字符集); entity.consumeContent (); 其他}{ 把新textbox (“statusCode=" + statusCode); } 返回json; } >之前<强>二,第二种方式>强,通过流的形式,贴代码:
/* * *发送http get请求 * * @param getUrl * @return */公共字符串sendGetRequest getUrl(字符串) { StringBuffer某人=new StringBuffer (); InputStreamReader isr=零; BufferedReader br=零; 试一试 { 网址URL=new URL (getUrl); URLConnection URLConnection=url.openConnection (); urlConnection.setAllowUserInteraction(假); isr=new InputStreamReader (url.openStream ()); br=new BufferedReader (isr); 字符串行; 在((=br.readLine行())!=null) { sb.append(线); } } 抓住(IOException e) { e.printStackTrace (); } 最后 { fileOperator。closeResources (isr, br); } 返回sb.toString (); } } >之前这两种实现方式不同,怎么使用看个人喜好吧,不过我在项目开发过程中,使用流的方式部署在预发机(linux机器)上会出现返回零的情况,但是本地窗户却正常访问,而且,换另外一台预发机也能正常获取数据,目前还没有研究出个所以然。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
java发送http get请求的两种方式