如何检查 URL 是否是本地机器?

How to check if URL is the local machine?

我有一个java.net.URL object in a Spring 4 @RestController。我如何检查 URL (HTTP) 是否指向当前机器(此 Spring 应用程序)或者是指向外部 HTTP 源的 URL?


我想你可以使用 InetAddress class 来检查一下。

1.First获取本地系统IP地址

      String localAddress = InetAddress.getLocalHost().getHostAddress();

2.Fetch 您要匹配的 url 地址。

      String requestAddress = InetAddress.getByName(new URL(url).getHost()).getHostAddress();

现在您可以比较 1 和 2 地址字符串。

希望对您有所帮助!!!

使用此 post 中的代码,您可以检查它是否是本地 IP。您应该传递一个 InetAddress 对象,因此使用以下命令从您的 URL 中获取它:

InetAddress.getByName(new URL(urlString).getHost());