Whois с JavaScript

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

Ответ 1

Попробуйте использовать 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=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);
  }
});

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

Обновление:

Услуга, упомянутая выше, не является бесплатной, но существует несколько бесплатных сервисов 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');
  }
});

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

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

Ответ 2

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

exec('whois domain.com');

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

Ответ 3

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

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

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

Ответ 4

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