我正在开发面向Android REST-API的应用程序。
我需要创建一个方法来检查服务器是否可用。 问题是如果您使用URL.openStream()方法,则无法确定请求是否成功。
有没有办法在不需要执行完整的HttpURLConnection并读取返回码的情况下执行此操作?
答案 0 :(得分:0)
您可以使用TCP Sockets
SocketAddress socketAddress = new InetSocketAddress(address, port);
try {
int timeout = 2000;
socket.connect(socketAddress, timeout);
}
catch (IOException e) {
return false;
}
finally {
if (socket.isConnected()) {
try {
socket.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
}