检查 RESTful 服务器在 Android 上是否可用
Check if RESTful server is available on Android
我正在开发面向 Android REST-API 的应用程序。
我需要创建一个方法来检查服务器是否可用。
问题是如果您使用 URL.openStream() 方法,则无法确定请求是否成功。
有没有一种不需要执行完整的 HttpURLConnection 和阅读 return 代码的操作的方法?
您可以使用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();
}
}
}
我正在开发面向 Android REST-API 的应用程序。
我需要创建一个方法来检查服务器是否可用。 问题是如果您使用 URL.openStream() 方法,则无法确定请求是否成功。
有没有一种不需要执行完整的 HttpURLConnection 和阅读 return 代码的操作的方法?
您可以使用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(); } } }