安卓连接(localhost)本地超时,百度等网站不会超时

白色d恋人 2014-03-11 06:50:46

public static String getJsonContent(String url_path) {
final String TAG = "HttpUtilsy";
try {
URL url = new URL(url_path);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setConnectTimeout(30000); // 请求超时时间3s
connection.setReadTimeout(30000);
connection.setRequestMethod("GET");
connection.setDoInput(true);
int code = connection.getResponseCode(); // 返回状态码
Log.i(TAG,"ResposeCode="+code);
if (code == 200) {
// 或得到输入流,此时流里面已经包含了服务端返回回来的JSON数据了,此时需要将这个流转换成字符串
return changeInputStream(connection.getInputStream());
}
} catch (Exception e) {
// TODO: handle exception
Log.i(TAG,"HttpUrl异常:"+e);
}
return "";
}


url如果是:http://localhost:8080/XXX/XXX就会连接超时
但是例如http://www.baidu.com的链接就不会超时,请求成功
这是为什么,是不是因为我的tomcat7服务器哪里设置有问题?
...全文
319 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
teemai 2014-03-12
  • 打赏
  • 举报
回复
10.0.0.2试试
酒比花香 2014-03-12
  • 打赏
  • 举报
回复
localhost,指的是本机,也就是安卓机器,这个必须用你电脑的ip地址。
rover11 2014-03-12
  • 打赏
  • 举报
回复
你不会是在模拟器上跑的吧? 如果是模拟器是不能用127.0.0.1的
哎,真难 2014-03-12
  • 打赏
  • 举报
回复
我怎么感觉局域网有问题了,,,
白色d恋人 2014-03-12
  • 打赏
  • 举报
回复
引用 7 楼 huxiweng 的回复:
10.0.0.2试试
这个不行,10.0.2.2可以~
白色d恋人 2014-03-12
  • 打赏
  • 举报
回复
引用 5 楼 rover11 的回复:
你不会是在模拟器上跑的吧? 如果是模拟器是不能用127.0.0.1的
对的,我是 用模拟器运行的。 后来我找到解决方案了,应该用10.0.2.2的,不能用localhost,已经别名了。
白色d恋人 2014-03-12
  • 打赏
  • 举报
回复
引用 2 楼 jerry_dqh 的回复:
直用本地的IP:8080试试看,另外ping loalhost看一下是否正常。
我是在模拟器上运行的
  • 打赏
  • 举报
回复
引用 2 楼 jerry_dqh 的回复:
直用本地的IP:8080试试看,另外ping loalhost看一下是否正常。
先这么试试吧
碼上道 2014-03-11
  • 打赏
  • 举报
回复
直用本地的IP:8080试试看,另外ping loalhost看一下是否正常。
白色d恋人 2014-03-11
  • 打赏
  • 举报
回复
也就是只要连接的是本地的url就会超时

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧