คำอธิบาย
ใช้ chrome.dns
API สำหรับการแก้ปัญหา DNS
สิทธิ์
dns
ความพร้อมใช้งาน
ไฟล์ Manifest
หากต้องการใช้ API นี้ คุณต้องประกาศสิทธิ์ "dns"
ใน manifest
{
"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
ตัวเลข
รหัสผลลัพธ์ 0 หมายถึงสำเร็จ
เมธอด
resolve()
chrome.dns.resolve(
hostname: string,
callback?: function,
): Promise<ResolveCallbackResolveInfo>
แปลงชื่อโฮสต์หรือที่อยู่ IP ที่ระบุ
พารามิเตอร์
-
hostname
สตริง
ชื่อโฮสต์ที่จะแก้ไข
-
callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(resolveInfo: ResolveCallbackResolveInfo) => void
-
resolveInfo
-
การคืนสินค้า
-
Promise<ResolveCallbackResolveInfo>
ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ