📜  Node.js dnsPromises.resolve4() 方法(1)

📅  最后修改于: 2023-12-03 15:03:12.619000             🧑  作者: Mango

Node.js dnsPromises.resolve4() 方法

Node.js dnsPromises.resolve4() 方法用于将域名解析为 IPv4 地址的数组。该方法返回一个 Promise 对象,可使用 async/await 进行异步编程。

语法
dnsPromises.resolve4(hostname[, options])
参数说明
  • hostname:要解析的域名。

  • options(可选):一个对象,指定解析选项。可以包括以下属性:

    • all:设置为 true 以返回所有匹配到的记录数组,默认为 false。
    • ttl:指定缓存记录的 TTL 值,单位为秒,默认值为 0。
    • verbatim:设置为 true 以使 hostname 不会像示例中所述被 IDNA 编码(例如,"北亰" 会被编码为 "xn--bjq308a"),默认为 false。注意:该选项用于 Node.js 13 及更高版本。
返回值

一个 Promise 对象,其解析值为一个 IPv4 地址字符串数组。如果指定了 options.all 属性,则返回所有匹配项的数组。如果无法解析 hostname,则该 Promise 对象将被拒绝(rejected)。

示例
const dnsPromises = require('dns').promises;

const ipAddress = async () => {
  const ipArr = await dnsPromises.resolve4('google.com');
  console.log(ipArr);
}

ipAddress();

输出:

[ '172.217.167.46', '172.217.167.78', '172.217.167.110', '172.217.167.142' ]

以上代码将解析 "google.com" 的 IPv4 地址数组并输出。