คำอธิบาย
chrome.extension
API มียูทิลิตีที่สามารถใช้กับหน้าส่วนขยายใดก็ได้ ซึ่งรวมถึงการรองรับการแลกเปลี่ยนข้อความระหว่างส่วนขยายและสคริปต์เนื้อหาของส่วนขยาย หรือระหว่างส่วนขยาย ตามที่อธิบายไว้อย่างละเอียดในการส่งข้อความ
ประเภท
ViewType
ประเภทของมุมมองส่วนขยาย
ค่าแจกแจง
พร็อพเพอร์ตี้
inIncognitoContext
จริง สำหรับสคริปต์เนื้อหาที่ทำงานในแท็บที่ไม่ระบุตัวตน และหน้าส่วนขยายที่ทำงานภายในกระบวนการที่ไม่ระบุตัวตน ตัวเลือกหลังใช้ได้เฉพาะกับส่วนขยายที่มี "split"โหมดไม่ระบุตัวตน_behavior เท่านั้น
ประเภท
boolean
lastError
โปรดใช้ runtime.lastError
กำหนดไว้ตลอดอายุของโค้ดเรียกกลับ หาก API ส่วนขยายที่ไม่พร้อมกันทำให้เกิดข้อผิดพลาด หากไม่มีข้อผิดพลาด สุดท้ายข้อผิดพลาดจะเป็น undefined
ประเภท
ออบเจ็กต์
พร็อพเพอร์ตี้
-
ข้อความ
string
คำอธิบายข้อผิดพลาดที่เกิดขึ้น
วิธีการ
getBackgroundPage()
chrome.extension.getBackgroundPage()
แสดงผลออบเจ็กต์ "window" ของ JavaScript สำหรับหน้าพื้นหลังที่ทำงานภายในส่วนขยายปัจจุบัน แสดงผล Null หากส่วนขยายไม่มีหน้าพื้นหลัง
การคืนสินค้า
-
หน้าต่าง | ไม่ระบุ
getExtensionTabs()
chrome.extension.getExtensionTabs(
windowId?: number,
)
โปรดใช้ extension.getViews
{type: "tab"}
แสดงผลอาร์เรย์ของออบเจ็กต์ "window" ของ JavaScript สำหรับแต่ละแท็บที่ทำงานภายในส่วนขยายปัจจุบัน หากระบุ windowId
ไว้ ระบบจะแสดงผลเฉพาะออบเจ็กต์ "หน้าต่าง" ของแท็บที่แนบกับหน้าต่างที่ระบุ
พารามิเตอร์
-
windowId
ตัวเลข ไม่บังคับ
การคืนสินค้า
-
หน้าต่าง[]
อาร์เรย์ของออบเจ็กต์หน้าต่างส่วนกลาง
getURL()
chrome.extension.getURL(
path: string,
)
โปรดใช้ runtime.getURL
แปลงเส้นทางแบบสัมพัทธ์ภายในไดเรกทอรีการติดตั้งส่วนขยายเป็น URL ที่มีคุณสมบัติครบถ้วน
พารามิเตอร์
-
เส้นทาง
string
เส้นทางไปยังทรัพยากรภายในส่วนขยายที่แสดงซึ่งเกี่ยวข้องกับไดเรกทอรีการติดตั้ง
การคืนสินค้า
-
string
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 ขึ้นไปManifest V3 ขึ้นไปรองรับคำสัญญา แต่จะใช้โค้ดเรียกกลับเพื่อความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 ฟีเจอร์ในการเรียกใช้ฟังก์ชันเดียวกันได้ คำสัญญาจะยุติด้วยประเภทเดียวกันกับที่ส่งไปยังโค้ดเรียกกลับ
isAllowedIncognitoAccess()
chrome.extension.isAllowedIncognitoAccess(
callback?: function,
)
เรียกข้อมูลสถานะการเข้าถึงโหมดไม่ระบุตัวตนของส่วนขยาย ซึ่งสอดคล้องกับการตั้งค่า "อนุญาตในโหมดไม่ระบุตัวตน" ที่ผู้ใช้ควบคุมตามส่วนขยายที่เข้าถึงได้ผ่านหน้า chrome://extensions
พารามิเตอร์
-
Callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(isAllowedAccess: boolean) => void
-
isAllowedAccess
boolean
"จริง" หากส่วนขยายมีสิทธิ์เข้าถึงโหมดไม่ระบุตัวตน "เท็จ" หากส่วนขยายเข้าถึงโหมดไม่ระบุตัวตนได้
-
การคืนสินค้า
-
Promise<boolean>
Chrome 99 ขึ้นไปManifest V3 ขึ้นไปรองรับคำสัญญา แต่จะใช้โค้ดเรียกกลับเพื่อความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 ฟีเจอร์ในการเรียกใช้ฟังก์ชันเดียวกันได้ คำสัญญาจะยุติด้วยประเภทเดียวกันกับที่ส่งไปยังโค้ดเรียกกลับ
sendRequest()
chrome.extension.sendRequest(
extensionId?: string,
request: any,
callback?: function,
)
โปรดใช้ runtime.sendMessage
ส่งคำขอรายการเดียวไปยังผู้ฟังคนอื่นๆ ภายในส่วนขยาย คล้ายกับ runtime.connect
แต่จะส่งเพียงคำขอเดียวพร้อมการตอบกลับที่ไม่บังคับ เหตุการณ์ extension.onRequest
จะเริ่มทำงานในแต่ละหน้าของส่วนขยาย
พารามิเตอร์
-
extensionId
string ไม่บังคับ
รหัสส่วนขยายของส่วนขยายที่คุณต้องการเชื่อมต่อ หากไม่ระบุ ค่าเริ่มต้นจะเป็นส่วนขยายของคุณเอง
-
ส่งคำขอ
อะไรก็ได้
-
Callback
ฟังก์ชัน ไม่บังคับ
Chrome 99 ขึ้นไปพารามิเตอร์
callback
มีลักษณะดังนี้(response: any) => void
-
การตอบกลับ
อะไรก็ได้
ออบเจ็กต์การตอบกลับ JSON ที่ส่งโดยเครื่องจัดการของคำขอ หากเกิดข้อผิดพลาดขณะเชื่อมต่อกับส่วนขยาย ระบบจะเรียกใช้การเรียกกลับโดยไม่มีอาร์กิวเมนต์ และตั้งค่า
runtime.lastError
เป็นข้อความแสดงข้อผิดพลาด
-
การคืนสินค้า
-
คำสัญญา<any>
Chrome 99 ขึ้นไปManifest V3 ขึ้นไปรองรับคำสัญญา แต่จะใช้โค้ดเรียกกลับเพื่อความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 ฟีเจอร์ในการเรียกใช้ฟังก์ชันเดียวกันได้ คำสัญญาจะยุติด้วยประเภทเดียวกันกับที่ส่งไปยังโค้ดเรียกกลับ
setUpdateUrlData()
chrome.extension.setUpdateUrlData(
data: string,
)
ตั้งค่าพารามิเตอร์ CGI ของ ap ที่ใช้ใน URL อัปเดตของส่วนขยาย ค่านี้จะไม่มีผลกับส่วนขยายที่โฮสต์ในแกลเลอรีส่วนขยายของ Chrome
พารามิเตอร์
-
ข้อมูล
string
เหตุการณ์
onRequest
chrome.extension.onRequest.addListener(
callback: function,
)
โปรดใช้ runtime.onMessage
เริ่มทำงานเมื่อคำขอส่งมาจากกระบวนการของส่วนขยายหรือสคริปต์เนื้อหา
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(request: any, sender: runtime.MessageSender, sendResponse: function) => void
-
ส่งคำขอ
อะไรก็ได้
-
ผู้ส่ง
-
sendResponse
ฟังก์ชัน
พารามิเตอร์
sendResponse
มีลักษณะดังนี้() => void
-
onRequestExternal
chrome.extension.onRequestExternal.addListener(
callback: function,
)
โปรดใช้ runtime.onMessageExternal
เริ่มทำงานเมื่อมีการส่งคำขอจากส่วนขยายอื่น
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(request: any, sender: runtime.MessageSender, sendResponse: function) => void
-
ส่งคำขอ
อะไรก็ได้
-
ผู้ส่ง
-
sendResponse
ฟังก์ชัน
พารามิเตอร์
sendResponse
มีลักษณะดังนี้() => void
-