WHOIS查询对象

时间:2012-05-20 14:45:41

标签: xml object whois

好的....在学习网页开发的过程中,每隔一段时间我就会陷入困境,因为我知道自己错过了一条基本的信息,只是想知道什么。这是因为有经验的程序员不关心重述基础知识。

无论如何,我正在尝试从WHOIS服务器检索信息,即whois.apnic.net。现在这个查询工作正常并返回所有1528字节

<?php
$abc=fsockopen("whois.godaddy.com", 43);
$xyz="website.com";
fputs($abc,$xyz);
$output = fread($abc,1528);
print_r($output);
if(!$output)
{
echo "there is no output";
}
?>

但这只返回前两行

<?php
$abc=fsockopen("whois.apnic.net", 43);
$xyz="194.6.248.10";
fputs($abc,$xyz);
$output = fread($abc,1528);
print_r($output);
if(!$output)
{
echo "there is no output";
}
?>

我已经在代码中尝试了很多修改,例如fgets而不是fread,url而不是ip地址,当我把while(!feof($ abc))条件放入先前的代码时它会返回所有内容,但是当我把它放在第二个代码中它只是超时或继续工作,如果我删除时间限制。上述IP地址来自欧洲,但在线Apnic WHOIS工具提供了有关它的信息,WHOIS API文档还指出Apnic可以联系其他注册管理机构并检索有关任何IP地址的信息。

apnic网站谈论发送和返回对象,只是“对象”,没有参考。我假设它在讨论XML对象。我只想要一个小的,基本的,简单的例子来说明如何查询这个API并获取和输出'对象'。谢谢!

2 个答案:

答案 0 :(得分:0)

您要查找的IP地址位于由RIPE(Whois.ripe.net)管理的范围内,而不是APNIC。

答案 1 :(得分:0)

    $whoisserver = 'whois.verisign-grs.com';
$domain = 'name.com';
$port = 43;
$timeout = 10;
$fp = @fsockopen($whoisserver, $port, $errno, $errstr, $timeout) or die("Socket Error " . $errno . " - " . $errstr);
fputs($fp, $domain . "\r\n");
while(!feof($fp)){
    $out .= fgets($fp);
}
fclose($fp);
  1. .com whois whois.verisign-grs.com
  2. .net whois whois.verisign-grs.com
  3. .org whois whois.pir.org

服务网址:http://akan.online/checkName.com 星期六快乐