1.问题场景还原:
eclipse上的android项目,运行到真机,然后去请求本地tomcat服务器的json文件。(注意:我用的是自家wifi,我的笔记本和手机ip是同一个网段)
2.问题描述:
1) 项目中连接本地tomcat服务器的代码:
try {
//1.封装url地址
URL url = new URL("http://192.168.1.101:8080/update74.json");
//2.开启一个链接
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
//3.设置常见请求参数(请求头)
//请求超时
connection.setConnectTimeout(2000);
//读取超时(不能读数据2秒)
connection.setReadTimeout(2000);
//默认就是get请求方式
//connection.setRequestMethod("POST");
//4.获取请求成功响应码
if(connection.getResponseCode() == 200){
//5.以流的形式,将数据获取下来
InputStream is = connection.getInputStream();
//6.将流转换成字符串(经常用,工具类封装)
String json = StreamUtil.streamToString(is);
Log.i(tag, json);
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
2)可见,代码中的 http://192.168.1.101:8080/update74.json的这句没错(注意:ip是我局域网本机的,你自己的话用ipconfig查询)
3)但是日志报错了,手机连不上本地tomcat服务器。估计你和我一样懵逼,代码没错啊,到底哪里出问题了呢?
3.问题解决:
重点来了, 我在网上百度了很久,有篇文章是说关闭win7防火墙,但我的是win10,所以我试了一下关闭防火墙,结果测试成功!!!
效果图: