我正在使用WhoisClient(org.apache.commons.net.whois.WhoisClient)检索我的网站域的到期日期。它适用于具有.com扩展名的域。当我尝试检查我的.org域之一的到期日期时,结果为No match for domain.org。如何确定A .org和.in扩展域的有效期?
我正在使用以下代码来获取域的到期日期
String domainName = mydomain.replaceFirst("^(http[s]?://www\\.|http[s]?://|www\\.)","");
WhoisClient whois = new WhoisClient();
whois.connect(WhoisClient.DEFAULT_HOST);
String whoisData1 = whois.query("=" + domainName);
whois.disconnect();
Run Code Online (Sandbox Code Playgroud)
不要打扰Whois协议。
现在(自2019年8月26日起)按照ICANN要求,所有gTLD都需要具有RDAP服务器。RDAP就像whois的后继者一样:交换了相同的内容,但是这次是在HTTPS之上使用某种固定的JSON格式。因此,解析起来很简单。
到期日期将在“事件”数组中,并带有一个名为“到期”的操作。
您可以转到https://data.iana.org/rdap/dns.json找出.ORGRDAP服务器,它位于URL https://rdap.publicinterestregistry.net/rdap/org/
您需要了解有关RDAP的更多信息,以了解如何使用它(查询和答复的结构),您可以在https://about.rdap.org/上找到一些介绍。
简而言之,这模拟了您需要执行的操作:
$ wget -qO - https://rdap.publicinterestregistry.net/rdap/org/domain/slashdot.org | jq '.events[] | select(.eventAction | contains("expiration")) | .eventDate'
"2019-10-04T04:00:00.000Z"
Run Code Online (Sandbox Code Playgroud)
PS1:如果正常情况下从Whois查询中找不到匹配项,则实际上意味着该域不存在;也可能是由于速率限制
PS2:.IN可能还没有RDAP服务器,因为它是ccTLD,因此不受ICANN规则的约束。
| 归档时间: |
|
| 查看次数: |
81 次 |
| 最近记录: |