gpt4 book ai didi

java - 用 Java 验证网络上的随机 URL

转载 作者:行者123 更新时间:2023-12-04 06:39:53 24 4
gpt4 key购买 nike

这个问题可能有点太低级了,但我已经找不到答案了。

我正在输入下一段,以便您可以纠正我/解释我无意中提到的事情。
您知道在 Web 浏览器中您可以从您自己的计算机输入目录路径,它会显示它们吗?显然,它也适用于本地网络中的页面。如果同一子网上有另一个页面,您可以使用“http://pagename/”访问它。

在我所在的网络上,有很多这样的页面,并且它们都(或大部分)具有通用的单字名称,例如 "http://word/"。我想使用 Java 测试一个常用词词典,以查看哪些词作为网络上的位置存在。当然,如果我知道网络上的 ip 地址范围,可能有更简单的方法,我知道。但是,如果我尝试在地址栏中键入“http://word/”(我从 ping 获得)的 IP 地址,则会得到“找不到页面”页面。即使“http://word/”有效,也是如此。

所以说我遍历我的词库。如何测试 URL 是否真实?
我已经研究出如何加载我的词库。这是我现在所拥有的

 URL article=new URL("http://word");  //sample URL
URLConnection myConn=article.openConnection();
Scanner myScan=new Scanner(new InputStreamReader(myConn.getInputStream()));
System.out.println(myScan.hasNext()); //Diagnostic output

当 URL 是用有效的 URL 构造时,这会起作用。当它传递一个错误的 URL 时,程序会忽略 System.out.println ,甚至不制作新线。我知道不同的浏览器会显示不同的“找不到页面”屏幕,并且它们有自己的 html 源代码。也许这与我的问题有关?

如何使用此方法测试 URL 是否真实?
鉴于我的问题,有没有办法用 IP 地址测试它?或者,为什么我在输入 IP 地址而不是 URL 时遇到问题?

最佳答案

您应该检查 HTTP 响应代码。如果 URL 是“真实的”(按照您的说法),响应代码应该是 200。否则我相信您会得到其他响应代码。

使用 HttpUrlConnection.getResponseCode();

HttpUrlConnection 是 URLConnection 的子类。当您使用 HTTP 连接时,这实际上是您从 openConnection() 获得的信息,所以你可以说:

URL article=new URL("http://word");//示例网址
HttpURLConnection myConn = (HttpURLConnection)article.openConnection();

关于java - 用 Java 验证网络上的随机 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4385087/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com