HttpUrlConnection get方式通信

       StringBuffer str=new StringBuffer(URLStr+"?");
            Map<String,Object> requestParamsMap = new HashMap<String, Object>();
            requestParamsMap.put("type",0);
            Iterator it=requestParamsMap.entrySet().iterator();
            while(it.hasNext()){
                Map.Entry<String,Object> element=(Entry<String, Object>) it.next();
                str.append(element.getKey());
                str.append("=");
                str.append(element.getValue());
                str.append("&");
            }
            if(str.length()>0)
                str.deleteCharAt(str.length()-1);//删除末尾多余的一个&       try {
                 URL url=new java.net.URL(str.toString());
                 URLConnection connection=url.openConnection();
                 HttpURLConnection con=(HttpURLConnection)connection;
                 con.setDoOutput(false);
                 //get请求能使用缓存
                 con.setUseCaches(true);
                 con.setRequestMethod("GET");
                 con.connect();
                 BufferedReader reader=new BufferedReader(new InputStreamReader(con.getInputStream()));
                 String line=null;
                 String result="";
                 while((line=reader.readLine())!=null){
                     result+=line;
                 }
                 System.out.println(result);
             } catch (Exception e) {
                 // TODO Auto-generated catch block
                 e.printStackTrace();
         }

  因为是get请求,需要把请求参数附加到url中,这里用到了hashmap,将绑定的参数放置在map对象中,然后依次遍历取出map对象,按照顺序填充url,然后执行url.openConnection()操作获取URLConnection对象。

  接下来把上面的URLconnection对象强转为HttpUrlConnection对象。con.setDoOutput(false)表明不进行output操作。con.setRequestMethod("GET")表明发起的是GET请求。

  最后一步是获取服务器返回的数据,这里用到了BufferedReader ,将返回的inputstream对象缓存好,最后利用BufferedReader 对象的read方法,将buffer中的数据按照行的顺序提取出来,保存在result。

  

时间: 2024-10-13 22:24:41

HttpUrlConnection get方式通信的相关文章

Android网络编程之使用HttpClient进行Get方式通信

在Android开发中,Android SDK附带了Apache的HttpClient,它是一个完善的客户端.它提供了对HTTP协议的全面支持,可以使用HttpClient的对象来执行HTTP GET和HTTP POST调用. HTTP工作原理: 1.客户端(一般是指浏览器,这里是指自己写的程序)与服务器建立连接 2.建立连接后,客户端向服务器发送请求 3.服务器接收到请求后,向客户端发送响应信息 4.客户端与服务器断开连接 HttpClient的一般使用步骤: 1.使用DefaultHttpC

JAVA HttpURLConnection Post方式提交传递参数

转自: http://wang09si.blog.163.com/blog/static/1701718042013631104658130/ JAVA HttpURLConnection Post方式提交传递参数 package wzq.j2se; import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStreamReader;im

Android开发之网络请求通信专题(一):基于HttpURLConnection的请求通信

在Android开发中,网络请求必然是必不可少.一般而言,都是基于http的网络请求.有时候也会有SOCKET请求,这个后续的专题再讲.今天,我们就先讲讲常用的Http请求. http求情自然是遵循http协议的,相关内容请转接:Java学习笔记之Http协议详解 好了,开始今天的正题. 一.基础HTTPURL请求方式 我们先来看一个最简单的例子,通过get方法请求拿到返回值 1.用get方式请求 URL url = new URL( "http://192.168.31.144:10010/M

java 通过HttpURLConnection与servlet通信

研究了一天才搞清楚,其实挺简单的,在这里记录下,以便以后参考. 一.创建一个servlet项目 主要包括(WEB-INF)里面有classes文件夹.lib文件夹.web.xml文件. 将写好的servlet类编译成的.class放到项目中的classes文件夹下(我的是helloServlet.class) 1.在web.xml中配置 <?xml version="1.0" encoding="ISO-8859-1"?> <web-app xml

在JAVA中用HTTPClient的GET方式通信步骤

一.下载jar包 打开http://hc.apache.org/downloads.cgi 选择压缩包下载 下载完后解压到本地 二.步骤 1)打开Eclipse,新建工程,右击工程->build path->Configure build path,选择libraries添加JARs,把上个步骤解压的httpcomponents-client-4.5.2\lib目录下的所有jar包添加进来 2)新建包类,编写代码

使用HttpClient进行Get方式通信(使用HttpGet获取网页数据)

1.项目结构 导入jar包 jar包去官网下载解压后项目新建lib目录,将解压包中的lib目录中的zip拷入项目lib目录文件夹,然后build path-->配置到项目中 2.TestGet.java package testhttpclient; import java.io.IOException; import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.cli

容器间通信的三种方式 - 每天5分钟玩转 Docker 容器技术(35)

容器之间可通过 IP,Docker DNS Server 或 joined 容器三种方式通信. IP 通信 从上一节的例子可以得出这样一个结论:两个容器要能通信,必须要有属于同一个网络的网卡. 满足这个条件后,容器就可以通过 IP 交互了.具体做法是在容器创建时通过 --network 指定相应的网络,或者通过 docker network connect 将现有容器加入到指定网络.可参考上一节 httpd 和 busybox 的例子,这里不再赘述. Docker DNS Server 通过 I

Java系列讲座一:TCP方式Socket通信案例讲解

开发网络通信软件,如QQ,阿里旺旺等即时通讯软件时,Socket通信是必备的基础知识,今天跟大家谈谈Socket通信中TCP方式通信的软件开发步骤及主要代码讲解: 第一步:开发服务器端程序Server.java,源代码如下: package T16; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; imp

Android与server通信的方法之中的一个(json)效率不高安全性不好

http通信.以xml或者json为载体.相互通信数据. Android对于http的网络通信,提供了标准的java接口--httpURLConnection接口.以及apache的接口--httpclient接口.当中我自己用的比較多的而是httpclient这个接口,由于它的功能更为丰富非常有效. 同一时候http通信也分为post方式和get的方式,两个相比較的话.post传送的数据量比較大,安全性也比較高.因此在做数据查询时.我会用get方式.而在做数据加入.改动或删除时,我就用Post