chrome.dns

คำอธิบาย

ใช้ chrome.dns API สําหรับการแก้ไข DNS

สิทธิ์

dns

ความพร้อมใช้งาน

ช่องทางเวอร์ชันที่กำลังพัฒนา

หากต้องการใช้ 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,
)

แก้ปัญหาชื่อโฮสต์หรือที่อยู่ IP ที่ระบุ

พารามิเตอร์

  • hostname

    สตริง

    ชื่อโฮสต์ที่จะแก้ไข

  • Callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback จะมีลักษณะดังนี้

    (resolveInfo: ResolveCallbackResolveInfo) => void

การคืนสินค้า

  • ไฟล์ Manifest เวอร์ชัน 3 ขึ้นไปรองรับ Promise แต่มี Callback ไว้เพื่อให้ใช้กับเวอร์ชันก่อนหน้าได้ คุณใช้ทั้ง 2 รูปแบบในการเรียกใช้ฟังก์ชันเดียวกันไม่ได้ พรอมต์จะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยังการเรียกกลับ