Node.js dns.resolve() Method
The dns.resolve() method is an inbuilt application programming interface of the dns module which is used to resolve hostname into an array of the resource records.
Syntax:
dns.resolve( hostname, rrtype, callback )
Parameters: This method accept three parameters as mentioned above and described below:
- hostname: This parameter specifies a string which denotes the hostname to be resolved.
- rrtype: It specifies the resource record type. Its default value is ‘A’. The list of records (‘A’, ‘AAAA’, ‘ANY’, ‘CNAME’, ‘MX’, ‘TXT’, ‘NS’, ‘NAPTR’, ‘PTR’, ‘SOA’, ‘SRV’) are described below:
- A: IPv4 address
- AAAA: IPv6 address
- ANY: Any records
- CNAME: canonical name records
- MX: mail exchange records
- NAPTR: name authority pointer records
- NS: name server records
- PTR: pointer records
- SOA: start of authority records
- SRV: service records
- TXT: text records
- callback: It specifies a function which to be called after DNS resolution of the hostname.
- error: It specifies error if generated.
- records: It’s string or object that signifies the returned record.
Return Value: This method returns error, records through callback function, These data are passed as parameters to the callback function.
Below examples illustrate the use of dns.resolve() Method in Node.js:
Example 1:
// Node.js program to demonstrate the // dns.resolve() method // Accessing dns module const dns = require( 'dns' ); // Set the rrtype for dns.resolve() method const rrtype= "A" ; // Calling dns.resolve() method for hostname // geeksforgeeks.org and print them in // console as a callback dns.resolve( 'geeksforgeeks.org' , rrtype, (err, records) => console.log( 'records: %j' , records)); |
Output:
records: ["34.218.62.116"]
Example 2:
// Node.js program to demonstrate the // dns.resolve() method // Accessing dns module const dns = require( 'dns' ); // Set the rrtype for dns.resolve() method const rrtype= "MX" ; // Calling dns.resolve() method for hostname // geeksforgeeks.org and print them in // console as a callback dns.resolve( 'geeksforgeeks.org' , rrtype, (err, records) => console.log( 'records: %j' , records)); |
Output:
records: [ {"exchange":"alt1.aspmx.l.google.com", "priority":5}, {"exchange":"alt2.aspmx.l.google.com", "priority":5}, {"exchange":"aspmx.l.google.com", "priority":1}, {"exchange":"alt3.aspmx.l.google.com", "priority":10}, {"exchange":"alt4.aspmx.l.google.com", "priority":10} ]
Example 3:
// Node.js program to demonstrate the // dns.resolve() method // Accessing dns module const dns = require( 'dns' ); // Set the rrtype for dns.resolve() method const rrtype= "TXT" ; // Calling dns.resolve() method for hostname // geeksforgeeks.org and print them in // console as a callback dns.resolve( 'geeksforgeeks.org' , rrtype, (err, records) => console.log( 'records: %j' , records)); |
Output:
records: [ ["v=spf1 include:amazonses.com include:_spf.google.com -all"], ["fob1m1abcdp777bf2ncvnjm08n"] ]
Example 4:
// Node.js program to demonstrate the // dns.resolve() method // Accessing dns module const dns = require( 'dns' ); // Set the rrtype for dns.resolve() method const rrtype= "NS" ; // Calling dns.resolve() method for hostname // geeksforgeeks.org and print them in // console as a callback dns.resolve( 'geeksforgeeks.org' , rrtype, (err, records) => console.log( 'records: %j' , records)); |
Output:
records: [ "ns-1520.awsdns-62.org", "ns-1569.awsdns-04.co.uk", "ns-245.awsdns-30.com", "ns-869.awsdns-44.net" ]
Note: The above program will compile and run by using the node index.js
command.
Reference: https://nodejs.org/api/dns.html#dns_dns_resolve_hostname_rrtype_callback
Please Login to comment...