首页 > 解决方案 > 如何检查给定的 URL 在 Java 和 JavaScript 中是否存在

问题描述

我正在尝试检查 URL 是否存在并且当前正在使用此验证器:

boolean isValid = URLUtil.isValidUrl( "https://www.googlesgger.com/" );
  1. https://www.google.com // 有效网址
  2. https://www.googlesgger.com/ // 实际上它不是一个有效的 URL,但它显示了一个有效的 URL

实际上它验证 http 或 https 和 www 和 .com (它检查 URL 包含 http 或 https 和 www 和 .com 不验证给定的 URL 是否有效)

请帮助我如何检查给定的完整 URL 是否有效。

标签: javascriptjavavalidationurl

解决方案


这段代码尝试与指定的 url 连接,如果连接成功,则继续并打印“URL 存在”;否则,将抛出 UnknownHostException,您可以在 catch 块中处理这种情况,如下所示:

import java.net.URL;
import java.net.URLConnection;
import java.net.UnknownHostException;

class URLExists
{   
    public static void main(String[] args)
    {
        try {
            URL url = new URL("http://www.google.com");
            URLConnection urlc = url.openConnection();
            urlc.connect();//<--- throws UnknownHostException when unable to connect!!
            System.out.println("URL exists");           
        }
        catch(UnknownHostException e)
        {
            System.out.println("URL either doesn't exist or unable to connect at this moment");
        }
        catch(Exception e) {e.printStackTrace();}
    }
}

推荐阅读