(Полное раскрытие: Я один из собственников Domainr, что обеспечивает API сделать это)
Нет, к сожалению, коды состояния HTTP не будет работать для этого - ошибка HTTP просто указывает на то, что HTTP-сервер не отвечает на заданный домен (и порт), который вы запрашиваете.
На более низком уровне, авторитетная доступность домена может быть определена только путем проверки бэкенда реестра ДВОЙ в (например, Verisign запускает .com
, Nominet работает .uk
и т.д.) от ICANN-аккредитованного регистратора лиц. (или реестры ccTLD, для доменов с кодом страны)
DNS почти выполняет то, что вы запрашиваете (например, NXDOMAIN
означает «доступно»), но могут быть ложные срабатывания, когда зарегистрированный домен не имеет связанных серверов имен , Если случайный ложный результат является приемлемым для вашего прецедента, тогда проверка DNS - это быстрый, бесплатный и простой способ выполнить это.
Другие API вы можете использовать:
ICANN-аккредитованным реселлером программы, такие как Hexonet, OpenSRS, DNSimple, Enom (но вы должны подтвердить, что это разрешено в соответствии с их Условия предоставления услуг)
нашего API на domainr.build
спасибо, те ложноположительные не являются приемлемыми, хотя. Теперь я ищу использовать whois api вместо того, чтобы просто использовать DNS. –
Да, вы можете попытаться использовать Whois для этого, но имейте в виду, что это может быть трудно разобрать последовательно, услуги для разных TLD могут быть ограничены по скорости и т. Д. – Case