- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要在 Java 中从 IPv4 地址(String 或 InetAddress 对象 - 任一都可以)创建 http 或 https URL 对象。我已经这样做了 10 个小时了。
碰壁的尝试如下所述:
尝试 #1:我尝试通过组装字符串来创建 URL,然后将其提供给 URL 构造函数。
URL a = new URL("http://151.101.65.69");
并打开一个到该 URL 的流 (a
) 会给出HTTP 错误 500(内部服务器错误 - 发生服务器不知道如何处理的意外情况)。URL a = new URL("http://stackoverflow.com");
有效。尝试#2:我尝试使用 InetAddress 类中的“getHostName()”方法对 IP 地址进行反向查找。
我正在尝试弄清楚如何使用 IP 地址打开网站。看来我的浏览器遇到了与我的代码相同的问题。我读过 How to access site through IP address when website is on a shared host?但我没有任何用户名,因为我希望能够打开用户拥有 IP 地址的任何网站。添加端口(如80)似乎不起作用;将用户名留空或使用通用的“用户”或“访客”也不行。
我需要从 IPv4 String 或 InetAddress 对象创建 URL 对象,但我陷入了困境。我知道像您这样知识渊博的程序员可能会说从 IP 地址创建 URL 不是 IP 地址的用途,或者指出我没有包含 URL 的文件部分,但这不是目前的问题。你能帮我解决我的核心挑战吗?
最佳答案
D.B. 提供的答案很好。我有非常相似的代码;但你会发现这段代码并不是每次都有效。您传递给 D.B. 答案提供的代码的 IPv4 地址将无法打开 URL 流(例如 stackoverflow 的 IP 地址)。我认为问题出在我的编码上,这就是我希望在 stackoverflow 上获得帮助的原因。但我现在意识到问题是我在问这个问题时缺乏理解。我现在明白,拥有 IPv4 地址不足以打开网络上的每个网站。每当一台服务器托管多个网站时,IP 地址都可以用于连接到该服务器,但不能同时识别我们要打开/访问的网站。这位先生解释得很好:http://ask-leo.com/why_doesnt_accessing_a_site_by_its_ip_address_work.html
@D.B.感谢您抽出时间提供帮助。非常感谢!
关于java - 如何使用 Java 中的 InetAddress 对象创建 URL 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39553307/
我使用的是 Windows 8 和 JDK 1.7。我的IP地址是192.168.1.108,当我运行时: System.out.println(InetAddress.getLocalHost().
我正在尝试使用“isReachable”方法检查某个主机是否可达。 line 113: oaiBaseURL = "http://www.cnn.com";//////////////////////
我向所有 Java 专家提出以下问题。 我正在尝试想出一种可靠的方法来创建 localHost InetAddress 对象,作为 InetAddress.getLocalHost() 的后备方法。
我使用以下代码来检查所提供的 IP 在 java 中是否可访问。 public String isNetworkReachable(){ int timeout = 2000;
我想要 InetAddress 的实例,但不想像强制该类的每个工厂方法那样将其放入 try-catch 中: InetAddress addr = InetAddress.getByAddress(i
我解析各种包含网络信息的数据源。 我一直在使用java.net.InetAddress来表示和解析主机。用 IP 初始化它工作正常。 我现在必须解析一个新的来源。它包含主机名而不是 IP。 InetA
由于某种原因,我似乎无法初始化 InetAddress 对象,我查看了文档,它与我的使用方式完全相同。 InetAddress firstMachineAddress = InetAddress.g
这个问题已经有答案了: Creating InetAddress object in Java (7 个回答) 已关闭 8 年前。 我知道如何使用它的静态方法为受试类创建一个实例,但有一些我无法理解的
我有下面的代码,在继续之前我用它来获取服务器的完整规范主机名。这将在我的服务器上返回一个值(特别是不同的域)。命令行上的 nslookup 返回正确的值。 我试图了解 java.inet 在内部到底做
我是 Java 的新手,但不是编程人员,我遇到了这个问题: InetAddress localAddress = InetAddress.getLocalHost(); 它让我很反感。我们将 loca
谁能解释一下 InetAddress 之间有什么区别吗?和 InetSocketAddress java中的类,如果有差异,请解释相同。我用谷歌搜索了它,但找不到任何解释。 最佳答案 InetAddr
我正在尝试了解 InetAddress.getLocalHost() 的工作原理。 Javadoc表示它从系统中检索主机名,然后将其解析为 InetAddress。 “解析为 InetAdess”到底
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
这个问题已经有答案了: Slash before InetAddress.getByName(host) (2 个回答) 已关闭 9 年前。 我想我的问题对于这里的人来说很容易回答吗?问题是,当我执行
我试图每 10 秒循环 ping 200 个 IP。因此,该循环每 10 秒执行一次。我使用此代码来 ping IP for (i = 0; i <= 200; i++ ) { ProcessB
在我的 Java 应用程序中,我需要一次获取多个连接的 ping,我尝试过为每个连接使用一个线程并测量响应时间,但它们似乎并不都是正确的。 是否有线程安全的方法来测量连接的 ping/响应时间?我目前
我有这个代码: import java.net.InetAddress; import java.net.UnknownHostException; public class NsLook
我在尝试模拟 InetAddress 中的静态方法时遇到了奇怪的问题。我能够成功地为许多其他类模拟静态方法并且一切正常,但 InetAddress 显示不同的行为。我正在使用 JUnit 4.x、Mo
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
我正在使用 Java InetAddress 来查找当前的互联网连接是否可以通过 DNS 解析地址。但是,如果我输入一个随机地址(互联网上绝对不存在的地址),我仍然会得到一个 IP,谁能解释为什么会出
我是一名优秀的程序员,十分优秀!