java 如何在InetAddress.getAllByName中放置URL?

wfypjpf4  于 2023-04-04  发布在  Java
关注(0)|答案(1)|浏览(139)

我遇到了一个问题。我想通过URL显示所有地址,类型**https://google.com,但我得到一个错误:
Exception in thread "main" java.net.UnknownHostException: This host is unknown (https://google.com)我知道在getAllByNAME中输入一个普通的域名(如
google.com**),一切都会正常工作。请帮助我解决这个问题
我的代码:

public class Main {
    public static void main(String[] args) throws UnknownHostException {
        InetAddress[] inetAddress = InetAddress.getAllByName("https://google.com");
        for (InetAddress key : inetAddress){
            System.out.println(key.getHostAddress());
        }
    }
}
p5fdfcr1

p5fdfcr11#

您使用协议(https://)给出了一个完整的URI,而只请求域。该函数基本上试图解析不是域名的内容,因此它不起作用。
您只能将其用于域名(与URI相同,但没有协议),就像您在google.com中指出的那样。
如果你需要拆分URI,你可以使用split函数,或者按照这里的解释来做:Java URL Without Protocol

相关问题