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


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


dns.resolveAny()方法是dns模塊的內置應用程序編程接口,用於使用DNS協議解析指定主機名的所有記錄(即“ ANY”或“ *”)。

用法:

dns.resolveAny( hostname, callback )

參數:此方法具有上述和以下所述的兩個參數:


  • hostname:此參數指定一個字符串,該字符串表示要解析的主機名。
  • callback:它指定在主機名進行DNS解析之後要調用的函數。
    • error:如果生成,則指定錯誤。
    • ret:它是一個對象,表示返回的主機名記錄。

返回值:該方法返回錯誤,通過回調函數記錄。這些數據作為參數傳遞給回調函數。

可能返回的記錄是:

  • A:IPv4地址
  • AAAA:IPv6地址
  • ANY:任何記錄
  • CNAME:規範名稱記錄
  • MX:郵件交換記錄
  • NAPTR:名稱權限指針記錄
  • NS:名稱服務器記錄
  • PTR:指針記錄
  • SOA:權限記錄的開始
  • SRV:服務記錄
  • TXT:文字記錄

以下示例說明了Node.js中dns.resolveAny()方法的使用:

範例1:

// Node.js program to demonstrate the    
// dns.resolveAny() method 
  
// Accessing dns module 
const dns = require('dns'); 
  
// Calling dns.resolveAny() method for  
// hostname geeksforgeeks.org and displaying 
// them in console as a callback 
dns.resolveAny('geeksforgeeks.org', (err,  
    ret) => console.log('records:%j', ret));

輸出:

records:[
    {"value":"ns-1520.awsdns-62.org","type":"NS"},
    {"value":"ns-1569.awsdns-04.co.uk","type":"NS"},
    {"value":"ns-245.awsdns-30.com","type":"NS"},
    {"value":"ns-869.awsdns-44.net","type":"NS"}
]

範例2:

// Node.js program to demonstrate the    
// dns.resolveAny() method 
  
// Accessing dns module 
const dns = require('dns'); 
  
// Calling dns.resolveAny() method for  
// hostname localhost and displaying 
// them in console as a callback 
dns.resolveAny('localhost', (err,  
    ret) => console.log('records:%j', ret));

輸出:

records:[
    {"address":"127.0.0.1", "ttl":0, "type":"A"}
]

注意:上麵的程序將通過使用node index.js命令。

參考: https://nodejs.org/api/dns.html#dns_dns_resolveany_hostname_callback



相關用法


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