如何验证 URL 状态

How to validate a URLs status

我有一个名为 Validationstatuscode.xlsx 的 excelsheet,它由 sheet 1 的 A 列上的 URL 列表组成。 我想验证所有显示 http 状态 200 或 400 的 URL。直到现在我已经使用 http://httpstatus.io/ 一次验证 100 个 URL,但现在数量增加了。 那么 java 中是否有可能验证 URL? 虽然我了解 java 但不知道该怎么做?

您可以为此使用 java.net.HttpURLConnection,如下面的示例所示。这里的关键是 getResponseCode 方法,它将 return HTTP 代码,即 200、400... .

package so;

import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

public class HttpRequest {

    private int getWebPageStatus(String url) {

        HttpURLConnection con = null;
        try {
            con = (HttpURLConnection) new URL(url).openConnection();
            return con.getResponseCode();

        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (con != null) {
                con.disconnect();
            }
        }

        return -1;
    }

    public static void main(String[] args) {
        HttpRequest request = new HttpRequest();

        System.out.println("https://login.yahoo.com  :" + request.getWebPageStatus("https://login.yahoo.com"));
        System.out.println("https://www.google.co.in :" + request.getWebPageStatus("https://www.google.co.in"));
        System.out.println("https://www.gmail.com    :" + request.getWebPageStatus("https://www.gmail.com"));
        System.out.println("https://xyz.co.in        :" + request.getWebPageStatus("https://xyz.co.in"));
    }

}