chrome.extension

คำอธิบาย

chrome.extension API มียูทิลิตีที่หน้าส่วนขยายใดก็ได้ใช้ ซึ่งรวมถึงการรองรับการแลกเปลี่ยนข้อความระหว่างส่วนขยายกับสคริปต์เนื้อหาของส่วนขยายหรือระหว่างส่วนขยายต่างๆ ตามที่อธิบายไว้อย่างละเอียดในการส่งข้อความ

ประเภท

ViewType

Chrome 44 ขึ้นไป

ประเภทของมุมมองชิ้นงาน

ค่าแจกแจง

"tab"

"popup"

พร็อพเพอร์ตี้

inIncognitoContext

จริงสำหรับสคริปต์เนื้อหาที่ทำงานในแท็บที่ไม่ระบุตัวตน และสำหรับหน้าส่วนขยายที่ทำงานในกระบวนการที่ไม่ระบุตัวตน ส่วน incognito_behavior แบบแยกจะใช้กับส่วนขยายที่มี incognito_behavior แบบ "แยก" เท่านั้น

ประเภท

บูลีน

lastError

≤ MV2 เลิกใช้งานแล้วตั้งแต่ Chrome 58

โปรดใช้ runtime.lastError

ตั้งค่าสำหรับอายุการใช้งานของคอลแบ็กหาก API ของส่วนขยายแบบไม่สอดคล้องกันทำให้เกิดข้อผิดพลาด หากไม่เกิดข้อผิดพลาดใดๆ lastError จะเท่ากับ undefined

ประเภท

ออบเจ็กต์

พร็อพเพอร์ตี้

  • ข้อความ

    สตริง

    คําอธิบายข้อผิดพลาดที่เกิดขึ้น

เมธอด

getBackgroundPage()

เบื้องหน้าเท่านั้น
chrome.extension.getBackgroundPage()

แสดงผลออบเจ็กต์ "window" ของ JavaScript สําหรับหน้าเบื้องหลังที่ทํางานภายในส่วนขยายปัจจุบัน แสดงผล Null หากส่วนขยายไม่มีหน้าพื้นหลัง

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

  • กรอบเวลา | undefined

getExtensionTabs()

≤ MV2 เบื้องหน้าเท่านั้น เลิกใช้งานแล้ว
chrome.extension.getExtensionTabs(
  windowId?: number,
)

โปรดใช้ extension.getViews {type: "tab"}

แสดงผลอาร์เรย์ของออบเจ็กต์ "window" ของ JavaScript สำหรับแต่ละแท็บที่ทำงานอยู่ภายในส่วนขยายปัจจุบัน หากระบุ windowId จะแสดงเฉพาะออบเจ็กต์ "window" ของแท็บที่แนบมากับหน้าต่างที่ระบุ

พารามิเตอร์

  • windowId

    ตัวเลข ไม่บังคับ

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

  • Window[]

    อาร์เรย์ออบเจ็กต์หน้าต่างส่วนกลาง

getURL()

≤ MV2 เลิกใช้งานแล้วตั้งแต่ Chrome 58
chrome.extension.getURL(
  path: string,
)

โปรดใช้ runtime.getURL

แปลงเส้นทางแบบสัมพัทธ์ภายในไดเรกทอรีการติดตั้งส่วนขยายเป็น URL ที่สมบูรณ์ในตัวเอง

พารามิเตอร์

  • เส้นทาง

    สตริง

    เส้นทางไปยังทรัพยากรภายในส่วนขยายที่แสดงตามไดเรกทอรีการติดตั้ง

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

  • สตริง

    URL ที่สมบูรณ์ในตัวเองไปยังทรัพยากร

getViews()

เบื้องหน้าเท่านั้น
chrome.extension.getViews(
  fetchProperties?: object,
)

แสดงผลอาร์เรย์ของออบเจ็กต์ "window" ของ JavaScript สําหรับแต่ละหน้าที่ทํางานภายในส่วนขยายปัจจุบัน

พารามิเตอร์

  • fetchProperties

    ออบเจ็กต์ ไม่บังคับ

    • tabId

      ตัวเลข ไม่บังคับ

      Chrome 54 ขึ้นไป

      ค้นหามุมมองตามรหัสแท็บ หากละเว้นช่องนี้ ระบบจะแสดงผลลัพธ์ทั้งหมด

    • ประเภท

      ViewType ไม่บังคับ

      ประเภทของมุมมองที่จะรับ หากไม่ระบุ ระบบจะแสดงผลลัพธ์เป็นยอดดูทั้งหมด (รวมถึงหน้าเว็บและแท็บที่ทำงานอยู่เบื้องหลัง)

    • windowId

      ตัวเลข ไม่บังคับ

      กรอบเวลาที่จะจำกัดการค้นหา หากไม่ระบุ ระบบจะแสดงผลลัพธ์ทั้งหมด

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

  • Window[]

    อาร์เรย์ของออบเจ็กต์ส่วนกลาง

isAllowedFileSchemeAccess()

สัญญา
chrome.extension.isAllowedFileSchemeAccess(
  callback?: function,
)

ดึงสถานะการเข้าถึงสคีมา "file://" ของส่วนขยาย ซึ่งสอดคล้องกับการตั้งค่า "อนุญาตให้เข้าถึง URL ของไฟล์" ของส่วนขยายแต่ละรายการที่ผู้ใช้ควบคุมได้ ซึ่งเข้าถึงได้ผ่านหน้า chrome://extensions

พารามิเตอร์

  • Callback

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

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

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      บูลีน

      จริงหากส่วนขยายเข้าถึงรูปแบบ "file://" ได้ เท็จหากไม่

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

  • Promise<boolean>

    Chrome 99 ขึ้นไป

    ระบบรองรับ Promises สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

isAllowedIncognitoAccess()

สัญญา
chrome.extension.isAllowedIncognitoAccess(
  callback?: function,
)

ดึงข้อมูลสถานะการเข้าถึงโหมดไม่ระบุตัวตนของส่วนขยาย ซึ่งสอดคล้องกับการตั้งค่า "อนุญาตในโหมดไม่ระบุตัวตน" ของส่วนขยายแต่ละรายการที่ผู้ใช้ควบคุมได้ ซึ่งเข้าถึงได้ผ่านหน้า chrome://extensions

พารามิเตอร์

  • Callback

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

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

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      บูลีน

      จริง หากส่วนขยายมีสิทธิ์เข้าถึงโหมดไม่ระบุตัวตน หรือเป็นเท็จหากไม่มี

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

  • Promise<boolean>

    Chrome 99 ขึ้นไป

    ระบบรองรับ Promises สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

sendRequest()

Promise &leq; MV2 เลิกใช้งานแล้ว
chrome.extension.sendRequest(
  extensionId?: string,
  request: any,
  callback?: function,
)

โปรดใช้ runtime.sendMessage

ส่งคําขอเดียวไปยังผู้ฟังรายอื่นภายในส่วนขยาย คล้ายกับ runtime.connect แต่ส่งเฉพาะคําขอรายการเดียวที่มีการตอบกลับที่ไม่บังคับ ระบบจะเรียกเหตุการณ์ extension.onRequest ในแต่ละหน้าของส่วนขยาย

พารามิเตอร์

  • extensionId

    สตริง ไม่บังคับ

    รหัสของส่วนขยายที่คุณต้องการเชื่อมต่อ หากไม่ระบุ ค่าเริ่มต้นคือส่วนขยายของคุณเอง

  • ส่งคำขอ

    ใดๆ

  • Callback

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

    Chrome 99 ขึ้นไป

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

    (response: any) => void

    • การตอบกลับ

      ใดๆ

      ออบเจ็กต์การตอบกลับ JSON ที่ส่งโดยตัวแฮนเดิลของคําขอ หากเกิดข้อผิดพลาดขณะเชื่อมต่อกับส่วนขยาย ระบบจะเรียกใช้การเรียกกลับโดยไม่มีอาร์กิวเมนต์และตั้งค่า runtime.lastError เป็นข้อความแสดงข้อผิดพลาด

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

  • Promise<any>

    Chrome 99 ขึ้นไป

    ระบบรองรับ Promises สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

setUpdateUrlData()

chrome.extension.setUpdateUrlData(
  data: string,
)

กําหนดค่าพารามิเตอร์ ap CGI ที่ใช้ใน URL อัปเดตของส่วนขยาย ระบบจะไม่สนใจค่านี้สำหรับส่วนขยายที่โฮสต์ในแกลเลอรีส่วนขยาย Chrome

พารามิเตอร์

  • ข้อมูล

    สตริง

กิจกรรม

onRequest

&leq; MV2 เลิกใช้งานแล้ว
chrome.extension.onRequest.addListener(
  callback: function,
)

โปรดใช้ runtime.onMessage

เรียกใช้เมื่อส่งคําขอจากกระบวนการส่วนขยายหรือสคริปต์เนื้อหา

พารามิเตอร์

  • Callback

    ฟังก์ชัน

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

    (request: any, sender: runtime.MessageSender, sendResponse: function) => void

    • ส่งคำขอ

      ใดๆ

    • ผู้ส่ง
    • sendResponse

      ฟังก์ชัน

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

      () => void

onRequestExternal

&leq; MV2 เลิกใช้งานแล้ว
chrome.extension.onRequestExternal.addListener(
  callback: function,
)

โปรดใช้ runtime.onMessageExternal

เรียกใช้เมื่อส่งคําขอจากส่วนขยายอื่น

พารามิเตอร์

  • Callback

    ฟังก์ชัน

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

    (request: any, sender: runtime.MessageSender, sendResponse: function) => void

    • ส่งคำขอ

      ใดๆ

    • ผู้ส่ง
    • sendResponse

      ฟังก์ชัน

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

      () => void