使用Java获取域过期日期

时间:2012-01-05 22:53:29

标签: java sockets

我正在处理一个假设要返回域名的到期日期的应用程序。我使用了getExpiration(),但它对于我插入的任何网站都保持返回0。EX:www.google.com到期2020-09-13,但是当我运行我的代码时它返回0意味着它不知道。有没有人知道任何其他方法来获取域名的到期日期?任何帮助将不胜感激。

    try
    {
        URL url = new URL("http://"+ hostname +":80");
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        long date = connection.getExpiration();
        if (date == 0)
          System.out.println("Expiration unknown.");
        else
          System.out.println("Expires: " + new Date(date));
    catch (Exception e)
    {   // ...
    }

1 个答案:

答案 0 :(得分:4)

域名的“到期日期”可通过Whois协议获得。请注意,并非所有域注册管理机构都会公开域过期日期,而那些确实暴露域名注册管理机构的域名注册管理机构可能会以不同方式公开域名。

可能有一个Java库可以简化对Whois服务的访问;我不知道。这样的事情应该很容易搜索。