Whois с JavaScript

Я хочу иметь возможность получать данные whois (и домены idn) с помощью клиентского JavaScript. Является ли это возможным? Может быть, существует какой-нибудь бесплатный REST-подобный сервис WhoIs?

5 ответов

Решение

Попробуйте использовать сервис http://whoisxmlapi.com/.

URL-адрес службы: http://www.whoisxmlapi.com/whoisserver/WhoisService

Вам необходимо указать outputFormat=json а также domainName=insert_domain_here параметры..

Пример URL: http://www.whoisxmlapi.com/whoisserver/WhoisService?outputFormat=json&domainName=stackru.com.

Пример кода (использование jQuery для упрощения связи AJAX):

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

ЗДЕСЬ это рабочий код.

Обновить:

Упомянутый выше сервис не является бесплатным, но есть несколько бесплатных сервисов whois, которые обеспечивают вывод HTML, и с помощью YQL вы можете извлечь HTML как JS. Смотрите этот ответ для более подробной информации.

Пример (с использованием jQuery & jquery.xdomainajax):

var domain = 'stackru.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');
  }
});

ЗДЕСЬ это рабочий код.

Вам нужно взглянуть на структуру HTML-документа и выбрать, обработать и отобразить интересующие вас данные. Пример - просто распечатать всю таблицу без какой-либо обработки.

Если вы включили exec() в php, вы можете создать php-файл со следующим:

exec('whois domain.com');

а затем создайте запрос.ajax() к сценарию php, где вы передаете имя домена и выводите его.

Пакет npm под названием node-whois сделал эту работу за меня. Это JS на стороне сервера, а не на стороне клиента, но, возможно, это кому-то поможет.

Вы можете использовать модуль whois npm

https://www.npmjs.com/package/whois

Также в терминале Mac попробуйте это, чтобы увидеть данные whois

whois google.com

Я также пытаюсь найти бесплатный провайдер Whois с выходом JSON, не могу найти. Но есть клиент Windows WHOIS, предоставляемый Microsoft, и, как кто-то из упомянутых выше, мы можем использовать PHP/cgi для получения подробной информации.

Я не уверен, что какой-либо провайдер поиска / запроса WHOIS выдает вывод JSON бесплатно.

Кстати, я только что нашел этот phpWhois с sourceforge.net, будет хорошей отправной точкой для использования whois с сервера. Эта библиотека также используется поставщиком RoboWhois / RubyWhois.

Другие вопросы по тегам