Описание
Используйте API chrome.dns
для разрешения DNS.
Разрешения
dns
Доступность
Манифест
Чтобы использовать этот API, необходимо объявить разрешение "dns"
в манифесте .
{
"name": "My extension",
...
"permissions": [
"dns"
],
...
}
Использование
Следующий код вызывает resolve()
для получения IP-адреса example.com
.
service-worker.js:
const resolveDNS = async () => {
let record = await chrome.dns.resolve('example.com');
console.log(record.address); // "192.0.2.172"
};
resolveDNS();
Типы
ResolveCallbackResolveInfo
Характеристики
- адрес
строка необязательная
Строка, представляющая собой литерал IP-адреса. Предоставляется только в том случае, если resultCode указывает на успешное выполнение.
- resultCode
число
Код результата. Ноль означает успех.
Методы
resolve()
chrome.dns.resolve(
hostname: string,
callback?: function,
): Promise<ResolveCallbackResolveInfo>
Разрешает заданное имя хоста или литерал IP-адреса.
Параметры
- имя хоста
нить
Имя хоста для разрешения.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(resolveInfo: ResolveCallbackResolveInfo) => void
- resolveInfo
Возврат
Обещание< ResolveCallbackResolveInfo >
Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.