dnsPromises.lookup(hostname[, options])
添加於:v10.6.0
參數
hostname<string>options<integer>|<Object>family<integer> 記錄係列。必須是4、6或0。0值表示同時返回 IPv4 和 IPv6 地址。 默認:0。hints<number>一個或多個支持getaddrinfo標誌.可以按位傳遞多個標誌OR荷蘭國際集團的值。all<boolean> 當true時,Promise使用數組中的所有地址解析。否則,返回單個地址。 默認:false。verbatim<boolean> 當true時,Promise按照 DNS 解析器返回它們的順序使用 IPv4 和 IPv6 地址進行解析。當false時,IPv4 地址放在 IPv6 地址之前。 默認: 當前為false(地址已重新排序),但預計在不久的將來會發生變化。默認值可使用或dns.setDefaultResultOrder()進行配置。新代碼應使用--dns-result-order{ verbatim: true }。
將主機名(例如 'nodejs.org' )解析為第一個找到的 A (IPv4) 或 AAAA (IPv6) 記錄。所有option 屬性都是可選的。如果 options 是整數,則它必須是 4 或 6 - 如果未提供 options,則如果找到,則返回 IPv4 和 IPv6 地址。
將 all 選項設置為 true 時,Promise 被解析為 addresses 是具有屬性 address 和 family 的對象數組。
出錯時,Promise 會被 對象拒絕,其中 Error err.code 是錯誤代碼。請記住,err.code 將設置為 'ENOTFOUND' 不僅在主機名不存在時,而且在查找因其他方式失敗(例如沒有可用的文件說明符)時。
不一定與 DNS 協議有關。該實現使用可以將名稱與地址相關聯的操作係統工具,反之亦然。這種實現會對任何 Node.js 程序的行為產生微妙但重要的影響。在使用 dnsPromises.lookup() dnsPromises.lookup() 之前,請花一些時間查閱 Implementation considerations section。
示例用法:
const dns = require('node:dns');
const dnsPromises = dns.promises;
const options = {
family: 6,
hints: dns.ADDRCONFIG | dns.V4MAPPED,
};
dnsPromises.lookup('example.com', options).then((result) => {
console.log('address: %j family: IPv%s', result.address, result.family);
// address: "2606:2800:220:1:248:1893:25c8:1946" family: IPv6
});
// When options.all is true, the result will be an Array.
options.all = true;
dnsPromises.lookup('example.com', options).then((result) => {
console.log('addresses: %j', result);
// addresses: [{"address":"2606:2800:220:1:248:1893:25c8:1946","family":6}]
});
相關用法
- Node.js dnsPromises.lookup()用法及代碼示例
- Node.js dnsPromises.lookupService(address, port)用法及代碼示例
- Node.js dnsPromises.lookupService()用法及代碼示例
- Node.js dnsPromises.resolveMx()用法及代碼示例
- Node.js dnsPromises.resolveTxt()用法及代碼示例
- Node.js dnsPromises.resolve()用法及代碼示例
- Node.js dnsPromises.resolveAny(hostname)用法及代碼示例
- Node.js dnsPromises.resolve6()用法及代碼示例
- Node.js dnsPromises.resolveSrv(hostname)用法及代碼示例
- Node.js dnsPromises.resolveSoa(hostname)用法及代碼示例
- Node.js dnsPromises.resolveAny()用法及代碼示例
- Node.js dnsPromises.reverse()用法及代碼示例
- Node.js dnsPromises.resolve4()用法及代碼示例
- Node.js dnsPromises.Resolver用法及代碼示例
- Node.js dnsPromises.resolveNaptr(hostname)用法及代碼示例
- Node.js dnsPromises.getServers()用法及代碼示例
- Node.js dnsPromises.resolveSoa()用法及代碼示例
- Node.js dnsPromises.setServers(servers)用法及代碼示例
- Node.js dnsPromises.resolveNs()用法及代碼示例
- Node.js dns.resolveNs()用法及代碼示例
- Node.js dns.resolveCname()用法及代碼示例
- Node.js dns.resolveSrv(hostname, callback)用法及代碼示例
- Node.js dns.resolveSoa()用法及代碼示例
- Node.js dns.resolve()用法及代碼示例
- Node.js dns.resolveSoa(hostname, callback)用法及代碼示例
注:本文由純淨天空篩選整理自nodejs.org大神的英文原創作品 dnsPromises.lookup(hostname[, options])。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
