Node.js – dnsPromises.resolve4() 方法

所述dnsPromises.resolve4()方法使用DNS协议来解析IPv4地址(A记录)的主机名。当为 True 时,promise 用一组 IP 地址解析。

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

语法

dns.resolve4(hostname, [options])

参数

  • 主机名- 此参数接受要解析的主机名的输入。

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

    • ttl – 这定义了每个记录的生存时间 (TTL)。回调接收这样的地址数组 – { address: '1.2.3.4', ttl:60 }

示例 1

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

// dns.resolve4() 演示示例

// 导入 dns 模块
const dns = require('dns');
const dnsPromises = dns.promises;

// 传递单个 dns 以获取值
dnsPromises.resolve4('nhooo.com').then((response) => {
   console.log("解析地址为:", response);
})
输出结果
解析地址为: [ '95.217.74.146' ]

示例 2

// dns.resolve4() 演示示例

// 导入 dns 模块
const dns = require('dns');

const dnsPromises = dns.promises;

const options = {
   ttl:true,
};

// 使用 promise 调用 resolve4
(async function() {

   // 传递的 dns 值需要解析
   const records = await dnsPromises.resolve4( 'nhooo.com', options);

   // 打印记录
   console.log(records);
})();
输出结果
[ { address: '95.217.74.146', ttl: 267 } ]