java - 在 Java 中测试服务器是否启动的正确方法?

标签 java android connection ping

简单地查看是否可以连接到网站/服务器的正确方法是什么?我想要这个用于我正在编写的应用程序,它会在我的网站离线时提醒我。

谢谢!

最佳答案

您可以使用 HttpURLConnection 发送请求并检查响应正文中是否有该页面独有的文本(而不是仅仅检查是否有响应,以防出现错误或维护页面或其他内容)被送达)。

Apache Commons有一个库删除了很多在 Java 中发出 Http 请求的样板。

我从来没有专门在 Android 上做过这样的事情,但如果有任何不同,我会感到惊讶。

这是一个简单的例子:

URL url = new URL(URL_TO_APPLICATION);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
InputStream stream = connection.getInputStream();
Scanner scanner = new Scanner(stream); // You can read the stream however you want. Scanner was just an easy example
boolean found = false;
while(scanner.hasNext()) {
    String next = scanner.next();
    if(TOKEN.equals(next)) {
        found = true;
        break;
    }
}

if(found) {
    doSomethingAwesome();
} else {
    throw aFit();
}

关于java - 在 Java 中测试服务器是否启动的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9552743/

相关文章:

java - 如何在 C 中使用 Long 数据类型?

connection - Minicom 启动时没有 cmd

python - Twython 连接超时。如何正确重启

java - 如何以编程方式检查 "use wireless networks"是否在 Android 上启用?

android - 如何使用Android Studio在Android L或4.4上运行应用程序?

java - Java中添加小数位(小数点后3位)

java - 使用 `System.exit()` 停止具有嵌入式 Jetty 服务器的 Java 应用程序是否安全?

java - Python 在接收行的末尾添加一个额外的 CR

java - 如何使用我自己的默认媒体播放器播放媒体

android - 接收到的数据没有膨胀到 gridview