當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Node.js dns.resolveAny(hostname, callback)用法及代碼示例


dns.resolveAny(hostname, callback)

曆史
版本變化
v18.0.0

將無效回調傳遞給 callback 參數現在會拋出 ERR_INVALID_ARG_TYPE 而不是 ERR_INVALID_CALLBACK


參數

使用 DNS 協議解析所有記錄(也稱為 ANY* 查詢)。傳遞給callback 函數的ret 參數將是一個包含各種類型記錄的數組。每個對象都有一個屬性type,指示當前記錄的類型。並且根據 type ,對象上將存在其他屬性:

類型特性
'A'address /ttl
'AAAA'address /ttl
'CNAME'value
'MX'參考 dns.resolveMx()
'NAPTR'參考 dns.resolveNaptr()
'NS'value
'PTR'value
'SOA'參考 dns.resolveSoa()
'SRV'參考 dns.resolveSrv()
'TXT'這種類型的記錄包含一個名為 entries 的數組屬性,它引用 dns.resolveTxt() ,例如{ entries: ['...'], type: 'TXT' }

以下是傳遞給回調的 ret 對象的示例:

[ { type: 'A', address: '127.0.0.1', ttl: 299 },
  { type: 'CNAME', value: 'example.com' },
  { type: 'MX', exchange: 'alt4.aspmx.l.example.com', priority: 50 },
  { type: 'NS', value: 'ns1.example.com' },
  { type: 'TXT', entries: [ 'v=spf1 include:_spf.example.com ~all' ] },
  { type: 'SOA',
    nsname: 'ns1.example.com',
    hostmaster: 'admin.example.com',
    serial: 156696742,
    refresh: 900,
    retry: 900,
    expire: 1800,
    minttl: 60 } ]

DNS 服務器操作符可能會選擇不響應 ANY 查詢。調用單獨的方法可能會更好,例如 dns.resolve4() dns.resolveMx() 等。有關詳細信息,請參閱 RFC 8482

相關用法


注:本文由純淨天空篩選整理自nodejs.org大神的英文原創作品 dns.resolveAny(hostname, callback)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。