如何增加Node.js中dns.resolve4()的超时时间?

如何增加Node.js中dnsparsing的超时时间? 我试图解决url,看看有什么可用的,但很多请求是超时,也许是误报。

// checks a url string for availability and errors on 'err' function checkAvailable( url ) { dns.resolve4( url, function (err, addresses) { if (err) console.log (url + " : " + err) }) } 

Node.js DNS模块是一个围绕c-ares的包装,在选项上非常简单。 如果您需要提供任何(例如超时),我build议您查看node-dns ,它提供DNS模块中所有可用function的1:1映射,以及用于指定更高级选项(包括超时):

 var dns = require('native-dns'); var question = dns.Question({ name: 'www.google.com', type: 'A' }); var req = dns.Request({ question: question, server: { address: '8.8.8.8', port: 53, type: 'udp' }, timeout: 1000 }); req.on('timeout', function () { console.log('Timeout in making request'); }); req.on('message', function (err, answer) { answer.answer.forEach(function (a) { console.log(a.promote().address); }); }); req.on('end', function () { console.log('Finished processing request'); }); req.send();