当我使用命令在Linux上进行测试时,错误发生在下面,可以帮我修复它吗?
sudo node -pe'require(“dns”)。lookup(“http://www.amazon.com”,function(){console.dir(arguments)})'
GetAddrInfoReqWrap {
callback: [Function],
family: 0,
hostname: 'http://www.amazon.com',
oncomplete: [Function: onlookup] }
{ '0':
{ Error: getaddrinfo ENOTFOUND http://www.amazon.com
at errnoException (dns.js:55:10)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:97:26)
code: 'ENOTFOUND',
errno: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'http://www.amazon.com' } }
某些系统信息: node -v v9.2.0
uname -a Linux 10-101-169-37 4.0.0-040000-generic#201504121935 SMP Sun Apr 12 12:36:33 UTC 2015 x86_64 x86_64 x86_64 GNU / Linux
答案 0 :(得分:2)
只需删除协议即可。当您想要解析dns记录时,不需要协议。
DNS协议并不关心其http
,https
,ftp
,' smtp`等......只是想要A记录来解决。
不要http://www.amazon.com
做www.amazon.com
这应该有效
sudo node -pe 'require("dns").lookup("www.amazon.com",function(){console.dir(arguments)})'