我正在尝试通过 HTTP 连接到与我的 Android 手机位于同一网络上的服务器。我的代码如下:
DefaultHttpClient client = new DefaultHttpClient();
String url = "http://192.168.137.1:80";
url += "/ebs/auth.php?username=" + username + "&password=" + password;
HttpGet get = new HttpGet(url);
HttpResponse response = client.execute(get);
HttpEntity respEntity = response.getEntity();
InputStream is = respEntity.getContent();
String content = GeneralUtility.fromStream(is);
return content;
返回的内容字符串应该是我解析的 JSON 字符串。在一个黄金时刻,我成功地访问了服务器,但对于所有其他尝试,我要么遇到了 TimeoutExceptions(我设置了 60 秒超时),要么遇到了更麻烦的错误:
org.apache.http.conn.HttpHostConnectException: Connection to http://192.168.137.1 refused
这是由以下原因引起的:
java.net.ConnectException: failed to connect to /192.168.137.1 (port 80): connect failed: EHOSTUNREACH (No route to host)
而这又是由以下原因引起的:
libcore.io.ErrnoException: connect failed: EHOSTUNREACH (No route to host)
我被困在这里,因为我什至无法为我的应用程序执行基本身份验证。我究竟做错了什么?