NODEJS dns.lookup

Kar*_*Rao 0 node.js

我正在尝试从终端读取网站的名称,并在屏幕上执行dnslookup来打印其IP,但以下代码由于某种原因抛出错误,这里是代码

process.stdout.write('Enter the website name:<www.sitename.com>: ');
process.stdin.resume();
var dns = require('dns');
process.stdin.on('data',function(site) {


var lookup = site.toString('utf-8');
console.log(lookup);
dns.lookup(lookup,function(err,ip) {
    if (err) throw err;
    console.log(ip);
       });

});
Run Code Online (Sandbox Code Playgroud)

错误是if(err)throw err; ^错误:getaddrinfo ENOENT在errnoException(dns.js:31:11)在Object.onanswer [as oncomplete](dns.js:123:16)

为什么代码不起作用?

Jer*_*NER 6

stdin上的数据为主机提供了一个尾随回车符.此尾随CR导致getaddrinfo ENOENT异常.

修改你的代码

var lookup = site.toString('utf-8').trim();
Run Code Online (Sandbox Code Playgroud)