説明
DNS 解決には chrome.dns
API を使用します。
権限
dns
対象
Dev チャンネル
マニフェスト
この API を使用するには、マニフェストで "dns"
権限を宣言する必要があります。
{
"name": "My extension",
...
"permissions": [
"dns"
],
...
}
用途
次のコードは、resolve()
を呼び出して example.com
の IP アドレスを取得します。
service-worker.js:
const resolveDNS = async () => {
let record = await chrome.dns.resolve('example.com');
console.log(record.address); // "192.0.2.172"
};
resolveDNS();
型
ResolveCallbackResolveInfo
プロパティ
-
address
string(省略可)
IP アドレス リテラルを表す文字列。resultCode が成功を示している場合にのみ指定します。
-
resultCode
数値
結果コード。ゼロは成功を示します。
Methods
resolve()
Promise
chrome.dns.resolve(
hostname: string,
callback?: function,
)
指定されたホスト名または IP アドレス リテラルを解決します。
パラメータ
-
hostname
文字列
解決するホスト名。
-
callback
関数(省略可)
callback
パラメータは次のようになります。(resolveInfo: ResolveCallbackResolveInfo) => void
-
resolveInfo
-
戻り値
-
Promise<ResolveCallbackResolveInfo>
Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。