如何从URL中获取不包含子域名的域名?
在Java中,您可以从字符串创建一个新的URL(urlString),并在URL上调用getHost(),但是它会包含子域名。
问题在于,可能有像subhost.example.com和subhost.example.co.uk这样的主机。
还有一些其他的两部分域名,如co.uk(请参阅https://wiki.mozilla.org/TLD_List上的列表)。
在我看来,获取只有域名的唯一正确方法是通过TLD列表进行搜索,从主机末尾删除TLD,并将主机中最后一个句点之前的所有内容删除。是否存在已有的方法可以实现此功能?我在java.net.URL中没有找到这样的方法,并且我稍微检查了一下apache commons,但也没有找到。