Android使用HttpURLConnection访问接口
2016-04-06 16:43
393 查看
在Android开发中常常需要访问接口来获取数据,这个时候可以使用HttpURLConnection来连接服务器并获取返回字符串。
我以登陆为例,具体方法如下:
这样,该函数返回回来的字符串就是接口返回的字符串,如果该字符串为json格式的,那么按照json去解析便可以了。
我以登陆为例,具体方法如下:
public static String login(String username,String password){ String msg = ""; try { username = URLEncoder.encode(username,"UTF-8");//这里要注意编码,如果参数含有汉字或是空格(尤其是日期中的空格),不编码会发生错误 password = URLEncoder.encode(password,"UTF-8"); } catch (UnsupportedEncodingException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } //要访问的HttpServlet String urlStr="http://127.0.0.1:8080/MyProject/getUser?"; //要传递的数 String params ="username="+username+"&password="+password; urlStr = urlStr+params; try{ URL url =new URL(urlStr); //获得连接 HttpURLConnection conn = (HttpURLConnection)url.openConnection(); conn.setConnectTimeout(6000); InputStream in = conn.getInputStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(in, HTTP.UTF_8)); String line = null; while ((line = reader.readLine()) != null) { if(msg==null){ msg=line; }else{ msg += line; } } reader.close(); in.close();//关闭数据流 conn.disconnect(); }catch(Exception e){ e.printStackTrace(); return null; } return msg; }
这样,该函数返回回来的字符串就是接口返回的字符串,如果该字符串为json格式的,那么按照json去解析便可以了。
相关文章推荐
- 打开设置界面报错问题
- 笔试笔记3 HTTPS HTTP
- Exception in thread "http-bio-8080-exec-2" java.lang.OutOfMemoryError: PermGen space
- TCP和UDP 粘包 消息保护边界
- TCP与UDP在概念上的区别
- python 网络编程 openurl [errno 10060]
- HttpClient 学习笔记--源自技术
- 笔试笔记2 SNMP为应用层协议 UDP 计算机网络拓扑结构 静态路由 缺省路由 组播 VOIP
- 通过win7中cmd命令提示符telnet模拟http请求
- SpringMVC源码剖析(五)-消息转换器HttpMessageConverter
- 浅谈浏览器http的缓存机制
- Caffe学习系列(18): 绘制网络模型
- HTTP状态代码以及定义(深度好文,赶紧收藏)
- gem install 出现Errno::ECONNRESET: Connection reset by peer - SSL_connect (https://api.rubygems.org
- MDN开发者网络
- ios AFNetworking 3.0 报错 : *** Assertion failure in -[AFHTTPRequestSerializer requestWithMethod:URLSt
- 【bzoj 3275】Number(最小割)
- HTTP协议的8种请求类型介绍
- [置顶] 用 Java 实现断点续传 (HTTP)
- HTTP 学习笔记(4)----CGI