【Node.js24.x】Object::resolveTxt()メソッドの使い方
resolveTxtメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
resolveTxtメソッドは、指定されたドメイン名に対応するTXTレコードを非同期に解決するメソッドです。
Node.jsのdns.promisesモジュールに属し、インターネット上のDNS(Domain Name System)サーバーから、特定のドメインに紐付けられたテキスト情報(TXTレコード)を取得する役割を持ちます。TXTレコードは、ドメインの所有権確認、メール認証(SPFやDKIM)、サイト検証など、様々な目的で利用される自由形式のテキストデータを保持するDNSレコードの一種です。
このメソッドは、解決したいドメイン名を引数に受け取り、その結果をPromiseとして返します。解決が成功すると、Promiseは文字列の配列の配列(string[][])として解決され、各TXTエントリのテキストデータが提供されます。これは、1つのTXTレコードエントリが複数の文字列に分割されている場合にも、この形式で対応できるように設計されています。
DNSサーバーが見つからない、または指定されたドメインにTXTレコードが存在しないといった問題が発生した際には、Promiseは拒否され、エラーオブジェクトが返されます。システム開発において、外部サービス連携時のドメインの正当性検証や、メール送信の信頼性を高めるためのSPF/DKIMレコード確認といったシーンで有効に活用できます。
構文(syntax)
1async function resolveTxtExample() { 2 const hostname = 'example.com'; 3 // Node.jsのObjectクラスにresolveTxtメソッドが存在すると仮定した場合の構文 4 // このメソッドはホスト名 (hostname) を引数に取り、Promise<string[][]> を返します。 5 const txtRecords = await Object.resolveTxt(hostname); 6 console.log(txtRecords); 7} 8 9resolveTxtExample();
引数(parameters)
hostname, callback
- hostname: string: 名前解決を行うホスト名
- callback: Function: 名前解決の結果を受け取るコールバック関数
戻り値(return)
戻り値なし
戻り値はありません