使用JavaScript的Whois

Dmi*_*sev 12 javascript whois

我希望能够通过客户端javascript获取whois数据(以及idn域).可能吗?也许存在一些类似REST的免费WhoIs服务?

kub*_*etz 9

尝试使用http://whoisxmlapi.com服务.

服务URL:http://www.whoisxmlapi.com/whoisserver/WhoisService

你需要指定outputFormat=jsondomainName=insert_domain_here参数..

示例URL:http://www.whoisxmlapi.com/whoisserver/WhoisServiceoutputFormat = json&domainName = stackoverflow.com.

示例代码(使用jQuery简化AJAX通信):

$.ajax({
  url: 'http://www.whoisxmlapi.com/whoisserver/WhoisService',
  dataType: 'jsonp',
  data: {
    domainName: 'stackoverflow.com',
    outputFormat: 'json'
  },
  success: function(data) {
    console.log(data.WhoisRecord);
  }
});
Run Code Online (Sandbox Code Playgroud)

是工作代码.

更新:

上面提到的服务不是免费的,但有几个免费的whois服务提供HTML输出,通过使用YQL,您可以将HTML检索为JS.有关详细信息,请参阅答案.

示例(使用jQuery和jquery.xdomainajax):

var domain = 'stackoverflow.com';
$.ajax({
  url: 'http://whois.webhosting.info/' + domain,
  type: 'GET',
  success: function(res) {
    // using jQuery to find table with class "body_text" and appending it to a page
    $(res.responseText).find('table.body_text').appendTo('body');
  }
});
Run Code Online (Sandbox Code Playgroud)

是工作代码.

您需要查看HTML文档的结构,并选择,处理和显示您感兴趣的数据.示例只是打印整个表而不进行任何处理.

  • 我在http://www.robowhois.com/上创建了类似的服务.我们提供JSON输出,以便您可以使用JavaScript轻松解析它. (3认同)

Mei*_*lla 5

如果您在 php 中启用了 exec(),您可以做的是创建一个包含以下内容的 php 文件:

exec('whois domain.com');
Run Code Online (Sandbox Code Playgroud)

然后创建一个 .ajax() 请求到 php 脚本,在其中传递域名并输出它。