chrome.extension

คำอธิบาย

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

ประเภท

ViewType

Chrome 44 ขึ้นไป

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

ค่าแจกแจง

"tab"

"ป๊อปอัป"

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

inIncognitoContext

เป็นจริงสำหรับ Content Script ที่ทำงานภายในแท็บที่ไม่ระบุตัวตน และสำหรับหน้าส่วนขยายที่ทำงานภายในกระบวนการที่ไม่ระบุตัวตน ส่วนอย่างหลังจะมีผลเฉพาะกับส่วนขยายที่มี incognito_behavior เป็น "split"

ประเภท

บูลีน

lastError

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

โปรดใช้ runtime.lastError

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

ประเภท

ออบเจ็กต์

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

  • ข้อความ

    สตริง

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

เมธอด

getBackgroundPage()

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

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

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

  • หน้าต่าง | ไม่ระบุ

getExtensionTabs()

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

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

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

พารามิเตอร์

  • windowId

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

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

  • Window[]

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

getURL()

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

โปรดใช้ runtime.getURL

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

พารามิเตอร์

  • เส้นทาง

    สตริง

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

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

  • สตริง

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

getViews()

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

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

พารามิเตอร์

  • fetchProperties

    object ไม่บังคับ

    • tabId

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

      Chrome 54 ขึ้นไป

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

    • ประเภท

      ViewType ไม่บังคับ

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

    • windowId

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

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

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

  • Window[]

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

isAllowedFileSchemeAccess()

Promise
chrome.extension.isAllowedFileSchemeAccess(
  callback?: function,
)
: Promise<boolean>

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

พารามิเตอร์

  • callback

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

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

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      บูลีน

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

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

  • Promise<boolean>

    Chrome 99 ขึ้นไป

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

isAllowedIncognitoAccess()

Promise
chrome.extension.isAllowedIncognitoAccess(
  callback?: function,
)
: Promise<boolean>

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

พารามิเตอร์

  • callback

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

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

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      บูลีน

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

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

  • Promise<boolean>

    Chrome 99 ขึ้นไป

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

sendRequest()

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

โปรดใช้ runtime.sendMessage

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

พารามิเตอร์

  • extensionId

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

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

  • ส่งคำขอ

    ใดๆ

  • callback

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

    Chrome 99 ขึ้นไป

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

    (response: any) => void

    • การตอบกลับ

      ใดๆ

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

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

  • Promise<any>

    Chrome 99 ขึ้นไป

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

setUpdateUrlData()

chrome.extension.setUpdateUrlData(
  data: string,
)
: void

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

พารามิเตอร์

  • เพิ่มเติม

    สตริง

กิจกรรม

onRequest

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

โปรดใช้ runtime.onMessage

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

พารามิเตอร์

  • 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