chrome.extension

Mô tả

API chrome.extension có các tiện ích mà mọi trang tiện ích đều có thể sử dụng. API này hỗ trợ việc trao đổi thông báo giữa một tiện ích và tập lệnh nội dung của tiện ích đó hoặc giữa các tiện ích, như được mô tả chi tiết trong phần Truyền thông báo.

Loại

ViewType

Chrome 44 trở lên

Loại khung hiển thị tiện ích.

Enum

"tab"

"popup"

Thuộc tính

inIncognitoContext

Đúng với tập lệnh nội dung chạy trong thẻ ẩn danh và với các trang tiện ích chạy trong một quy trình ẩn danh. Trường hợp sau chỉ áp dụng cho các tiện ích có incognito_behavior là "split".

Loại

boolean

lastError

≤ MV2 Không dùng nữa kể từ Chrome 58

Vui lòng sử dụng runtime.lastError.

Đặt cho vòng đời của một lệnh gọi lại nếu một API tiện ích không đồng bộ đã dẫn đến lỗi. Nếu không có lỗi nào xảy ra, lastError sẽ là undefined.

Loại

đối tượng

Thuộc tính

  • tin nhắn

    chuỗi

    Nội dung mô tả lỗi đã xảy ra.

Phương thức

getBackgroundPage()

Chỉ nền trước
chrome.extension.getBackgroundPage(): Window | undefined

Trả về đối tượng "window" JavaScript cho trang nền đang chạy trong tiện ích hiện tại. Trả về giá trị rỗng nếu tiện ích không có trang nền.

Giá trị trả về

  • Cửa sổ | không xác định

getExtensionTabs()

≤ MV2 Chỉ ở nền trước Không dùng nữa
chrome.extension.getExtensionTabs(
  windowId?: number,
)
: Window[]

Vui lòng sử dụng extension.getViews {type: "tab"}.

Trả về một mảng các đối tượng "window" của JavaScript cho từng thẻ đang chạy trong tiện ích hiện tại. Nếu windowId được chỉ định, chỉ trả về các đối tượng "window" của các thẻ được đính kèm vào cửa sổ đã chỉ định.

Thông số

  • windowId

    number không bắt buộc

Giá trị trả về

  • Window[]

    Mảng đối tượng cửa sổ chung

getURL()

≤ MV2 Không dùng nữa kể từ Chrome 58
chrome.extension.getURL(
  path: string,
)
: string

Vui lòng sử dụng runtime.getURL.

Chuyển đổi một đường dẫn tương đối trong thư mục cài đặt tiện ích thành một URL đủ điều kiện.

Thông số

  • đường dẫn

    chuỗi

    Đường dẫn đến một tài nguyên trong tiện ích được biểu thị tương ứng với thư mục cài đặt của tiện ích đó.

Giá trị trả về

  • chuỗi

    URL đủ điều kiện của tài nguyên.

getViews()

Chỉ nền trước
chrome.extension.getViews(
  fetchProperties?: object,
)
: Window[]

Trả về một mảng gồm các đối tượng "window" của JavaScript cho từng trang đang chạy trong tiện ích hiện tại.

Thông số

  • fetchProperties

    đối tượng không bắt buộc

    • tabId

      number không bắt buộc

      Chrome 54 trở lên

      Tìm một khung hiển thị theo mã nhận dạng thẻ. Nếu trường này bị bỏ qua, thì sẽ trả về tất cả các khung hiển thị.

    • loại

      ViewType không bắt buộc

      Loại khung hiển thị cần lấy. Nếu bị bỏ qua, hàm này sẽ trả về tất cả các khung hiển thị (bao gồm cả các trang và thẻ ở chế độ nền).

    • windowId

      number không bắt buộc

      Cửa sổ để hạn chế phạm vi tìm kiếm. Nếu bạn bỏ qua tham số này, hệ thống sẽ trả về tất cả các chế độ xem.

Giá trị trả về

  • Window[]

    Mảng các đối tượng toàn cầu

isAllowedFileSchemeAccess()

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

Truy xuất trạng thái truy cập của tiện ích vào lược đồ "file://". Chế độ cài đặt này tương ứng với chế độ cài đặt "Cho phép truy cập vào các URL của tệp" theo từng tiện ích do người dùng kiểm soát và có thể truy cập thông qua trang chrome://extensions.

Thông số

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      boolean

      True nếu tiện ích có thể truy cập vào lược đồ "file://", false nếu không.

Giá trị trả về

  • Promise<boolean>

    Chrome 99 trở lên

    Các promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.

isAllowedIncognitoAccess()

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

Truy xuất trạng thái truy cập Chế độ ẩn danh của tiện ích. Chế độ cài đặt này tương ứng với chế độ cài đặt "Cho phép ở Chế độ ẩn danh" theo từng tiện ích do người dùng kiểm soát và có thể truy cập thông qua trang chrome://extensions.

Thông số

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      boolean

      True nếu tiện ích có quyền truy cập vào Chế độ ẩn danh, false nếu không.

Giá trị trả về

  • Promise<boolean>

    Chrome 99 trở lên

    Các promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.

sendRequest()

Promise &leq; MV2 Không dùng nữa
chrome.extension.sendRequest(
  extensionId?: string,
  request: any,
  callback?: function,
)
: Promise<any>

Vui lòng sử dụng runtime.sendMessage.

Gửi một yêu cầu duy nhất đến những trình nghe khác trong tiện ích. Tương tự như runtime.connect, nhưng chỉ gửi một yêu cầu duy nhất có phản hồi không bắt buộc. Sự kiện extension.onRequest sẽ được kích hoạt trong mỗi trang của tiện ích.

Thông số

  • extensionId

    chuỗi không bắt buộc

    Mã nhận dạng tiện ích của tiện ích mà bạn muốn kết nối. Nếu bạn bỏ qua, thì mặc định sẽ là tiện ích của riêng bạn.

  • request

    bất kỳ

  • callback

    hàm không bắt buộc

    Chrome 99 trở lên

    Tham số callback có dạng như sau:

    (response: any) => void

    • phản hồi

      bất kỳ

      Đối tượng phản hồi JSON do trình xử lý yêu cầu gửi. Nếu xảy ra lỗi trong khi kết nối với tiện ích, lệnh gọi lại sẽ được gọi mà không có đối số và runtime.lastError sẽ được đặt thành thông báo lỗi.

Giá trị trả về

  • Promise<any>

    Chrome 99 trở lên

    Các promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.

setUpdateUrlData()

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

Đặt giá trị cho tham số CGI ap được dùng trong URL cập nhật của tiện ích. Giá trị này sẽ bị bỏ qua đối với những tiện ích được lưu trữ trong Thư viện tiện ích của Chrome.

Thông số

  • khác

    chuỗi

Sự kiện

onRequest

&leq; MV2 Không dùng nữa
chrome.extension.onRequest.addListener(
  callback: function,
)

Vui lòng sử dụng runtime.onMessage.

Kích hoạt khi một yêu cầu được gửi từ quy trình tiện ích hoặc tập lệnh nội dung.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

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

    • request

      bất kỳ

    • người gửi
    • sendResponse

      hàm

      Tham số sendResponse có dạng như sau:

      () => void

onRequestExternal

&leq; MV2 Không dùng nữa
chrome.extension.onRequestExternal.addListener(
  callback: function,
)

Vui lòng sử dụng runtime.onMessageExternal.

Kích hoạt khi một yêu cầu được gửi từ một tiện ích khác.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

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

    • request

      bất kỳ

    • người gửi
    • sendResponse

      hàm

      Tham số sendResponse có dạng như sau:

      () => void