chrome.extension

คำอธิบาย

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

ประเภท

ViewType

Chrome 44 ขึ้นไป

ประเภทของมุมมองส่วนขยาย

ค่าแจกแจง

"tab"

"ป๊อปอัป"

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

inIncognitoContext

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

ประเภท

boolean

lastError

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

โปรดใช้ runtime.lastError

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

ประเภท

ออบเจ็กต์

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

  • ข้อความ

    สตริง

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

เมธอด

getBackgroundPage()

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

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

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

  • กรอบเวลา | ไม่ได้กำหนด

getExtensionTabs()

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

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

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

พารามิเตอร์

  • windowId

    หมายเลข ไม่บังคับ

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

  • หน้าต่าง[]

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

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

      หมายเลข ไม่บังคับ

      หน้าต่างที่จำกัดการค้นหาไว้ หากละเว้น ระบบจะแสดงผลการดูทั้งหมด

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

  • หน้าต่าง[]

    อาร์เรย์ของวัตถุส่วนกลาง

isAllowedFileSchemeAccess()

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

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

พารามิเตอร์

  • Callback

    ไม่บังคับ

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

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      boolean

      เป็นจริงหากส่วนขยายเข้าถึง "file://" ได้ สคีมหรือเท็จหรือไม่เช่นนั้น

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

  • Promise<boolean>

    Chrome 99 ขึ้นไป

    Promise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback

isAllowedIncognitoAccess()

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

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

พารามิเตอร์

  • Callback

    ไม่บังคับ

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

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      boolean

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

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

  • Promise<boolean>

    Chrome 99 ขึ้นไป

    Promise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback

sendRequest()

สัญญา ≤ MV2 เลิกใช้งาน
chrome.extension.sendRequest(
  extensionId?: string,
  request: any,
  callback?: function,
)

โปรดใช้ runtime.sendMessage

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

พารามิเตอร์

  • extensionId

    string ไม่บังคับ

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

  • ส่งคำขอ

    ใดๆ

  • Callback

    ไม่บังคับ

    Chrome 99 ขึ้นไป

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

    (response: any) => void

    • การตอบกลับ

      ใดๆ

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

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

  • สัญญา<ไม่จำกัด>

    Chrome 99 ขึ้นไป

    Promise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback

setUpdateUrlData()

chrome.extension.setUpdateUrlData(
  data: string,
)

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

พารามิเตอร์

  • ข้อมูล

    สตริง

กิจกรรม

onRequest

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

โปรดใช้ runtime.onMessage

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

พารามิเตอร์

  • Callback

    ฟังก์ชัน

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

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

    • ส่งคำขอ

      ใดๆ

    • ผู้ส่ง
    • sendResponse

      ฟังก์ชัน

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

      () => void

onRequestExternal

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

โปรดใช้ runtime.onMessageExternal

เริ่มทำงานเมื่อมีการส่งคำขอจากส่วนขยายอื่น

พารามิเตอร์

  • Callback

    ฟังก์ชัน

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

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

    • ส่งคำขอ

      ใดๆ

    • ผู้ส่ง
    • sendResponse

      ฟังก์ชัน

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

      () => void