从 URL 获取没有子域的域
从没有子域的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共享资源,但在那里找不到一个。