阅读 160

Node.js – dnsPromises.lookup方法

该方法将主机名(例如,nhooo.com)解析为第一个找到的 IPv4)或 AAAA(IPv6)记录。选项下可用的属性是可选的。dnsPromises.lookup()

dns.lookup()与 DNS 协议无关。该实现使用可以将名称与地址相关联的操作系统工具,反之亦然。

dnsPromisesdns模块之间的区别在于,它dns.promises为返回Promise对象而不是回调的异步 DNS 方法提供了一种替代方法。

语法


dnsPromises.lookup(hostname, [options])


参数

  • 主机名- 这是您要查找其 DNS 值的网站主机名。

  • 选项- 它可以有以下选项

    • family – 它的值只能为 4、6 或 0。值 0 表示同时返回 IPv4 和 IPv6 地址。

    • 提示– 它启用一个或多个getAddrinfoflags。

    • all – 当此值设置为 True 时,回调返回数组中所有解析的地址,否则返回单个地址。

    • 逐字逐字– 回调的返回顺序与 DNS 解析器在设置为 True 时返回它们的顺序相同。

示例 1

创建一个文件“lookup.js”并复制以下代码片段。创建文件后,使用命令“node lookup.js”运行此代码。


// dns.lookup() 方法演示示例// 导入 dns 模块const dns = require('dns');const dnsPromises = dns.promises;// 为 dns.lookup() 传递一些选项const options = {
   family: 6,
   hints:dns.ADDRCONFIG| dns.V4MAPPED,
};// 当所有选项都为真时,结果将是一个数组dnsPromises.lookup('nhooo.com', options).then((response) =>{
   console.log('addresses: %j', response);
});

输出结果

C:\home\node>> node lookup.jsaddresses: {"address":"64:ff9b::5fd9:4a92","family":6}


示例 2


// dns.lookup() 方法演示示例// 导入 dns 模块const dns = require('dns');const dnsPromises = dns.promises;// 为 dnsPromises.lookup() 设置选项// 方法,都一样const options = {
   all:true,
};// 当所有选项都为真时,结果将是一个数组dnsPromises.lookup('nhooo.com', options).then((response) =>{
   console.log('addresses: %j', response);
});

输出结果

C:\home\node>> node lookup.js
addresses:
[{"address":"95.217.74.146","family":4},{"address":"64:ff9b::5fd9 :4a92","family":6}]


文章分类
百科问答
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐