chrome.extension

Описание

В API chrome.extension есть утилиты, которые могут использоваться любой страницей расширения. Он включает поддержку обмена сообщениями между расширением и его сценариями содержимого или между расширениями, как подробно описано в разделе «Передача сообщений» .

Типы

ViewType

Хром 44+

Тип представления расширения.

Перечисление

"вкладка"

"неожиданно возникнуть"

Характеристики

inIncognitoContext

Верно для сценариев содержимого, выполняемых внутри вкладок в режиме инкогнито, и для страниц расширений, работающих внутри процесса в режиме инкогнито. Последнее применимо только к расширениям с «разделенным» incognito_behavior.

Тип

логическое значение

lastError

≤ MV2 устарел с версии Chrome 58.

Пожалуйста, используйте runtime.lastError .

Устанавливается на время существования обратного вызова, если ансинхронное расширение API привело к ошибке. Если ошибок не произошло, значение LastError будет undefined .

Тип

объект

Характеристики

  • сообщение

    нить

    Описание произошедшей ошибки.

Методы

getBackgroundPage()

Только передний план
chrome.extension.getBackgroundPage()

Возвращает объект JavaScript «окно» для фоновой страницы, работающей внутри текущего расширения. Возвращает значение null, если у расширения нет фоновой страницы.

Возврат

  • Окно | неопределенный

getExtensionTabs()

Только передний план MV2 Устарело
chrome.extension.getExtensionTabs(
  windowId?: number,
)

Пожалуйста, используйте extension.getViews {type: "tab"} .

Возвращает массив объектов «окна» JavaScript для каждой из вкладок, работающих внутри текущего расширения. Если указан windowId , возвращает только объекты «окно» вкладок, прикрепленных к указанному окну.

Параметры

  • идентификатор окна

    номер необязательно

Возврат

  • Окно[]

    Массив глобальных оконных объектов

getURL()

≤ MV2 устарел с версии Chrome 58.
chrome.extension.getURL(
  path: string,
)

Пожалуйста, используйте runtime.getURL .

Преобразует относительный путь в каталоге установки расширения в полный URL-адрес.

Параметры

  • путь

    нить

    Путь к ресурсу внутри расширения, выраженный относительно каталога его установки.

Возврат

  • нить

    Полный URL-адрес ресурса.

getViews()

Только передний план
chrome.extension.getViews(
  fetchProperties?: object,
)

Возвращает массив объектов «окна» JavaScript для каждой страницы, работающей внутри текущего расширения.

Параметры

  • выборка свойств

    объект необязательный

    • идентификатор табуляции

      номер необязательно

      Хром 54+

      Найдите представление по идентификатору вкладки. Если это поле опущено, возвращаются все представления.

    • тип

      Тип представления необязательно

      Тип представления, которое необходимо получить. Если этот параметр опущен, возвращаются все представления (включая фоновые страницы и вкладки).

    • идентификатор окна

      номер необязательно

      Окно, которым ограничивается поиск. Если опущено, возвращает все представления.

Возврат

  • Окно[]

    Массив глобальных объектов

isAllowedFileSchemeAccess()

Обещать
chrome.extension.isAllowedFileSchemeAccess(
  callback?: function,
)

Получает состояние доступа расширения к схеме «file://». Это соответствует управляемой пользователем настройке «Разрешить доступ к URL-адресам файлов» для каждого расширения, доступной на странице chrome://extensions.

Параметры

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      логическое значение

      True, если расширение может получить доступ к схеме «file://», в противном случае — false.

Возврат

  • Обещание <логическое значение>

    Хром 99+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

isAllowedIncognitoAccess()

Обещать
chrome.extension.isAllowedIncognitoAccess(
  callback?: function,
)

Получает состояние доступа расширения к режиму инкогнито. Это соответствует управляемой пользователем настройке «Разрешено в инкогнито» для каждого расширения, доступной на странице chrome://extensions.

Параметры

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      логическое значение

      True, если расширение имеет доступ к режиму инкогнито, в противном случае — false.

Возврат

  • Обещание <логическое значение>

    Хром 99+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

sendRequest()

Обещание ≤ MV2 устарело
chrome.extension.sendRequest(
  extensionId?: string,
  request: any,
  callback?: function,
)

Пожалуйста, используйте runtime.sendMessage .

Отправляет один запрос другим прослушивателям внутри расширения. Аналогично runtime.connect , но отправляет только один запрос с необязательным ответом. Событие extension.onRequest запускается на каждой странице расширения.

Параметры

  • идентификатор расширения

    строка необязательна

    Идентификатор расширения, к которому вы хотите подключиться. Если этот параметр опущен, по умолчанию используется ваше собственное расширение.

  • запрос

    любой

  • перезвонить

    функция необязательна

    Хром 99+

    Параметр callback выглядит так:

    (response: any) => void

    • ответ

      любой

      Объект ответа JSON, отправленный обработчиком запроса. Если при подключении к расширению возникает ошибка, обратный вызов будет вызван без аргументов, а runtime.lastError будет установлено сообщение об ошибке.

Возврат

  • Обещание <любое>

    Хром 99+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

setUpdateUrlData()

chrome.extension.setUpdateUrlData(
  data: string,
)

Устанавливает значение параметра ap CGI, используемого в URL-адресе обновления расширения. Это значение игнорируется для расширений, размещенных в галерее расширений Chrome.

Параметры

  • данные

    нить

События

onRequest

≤ MV2 устарел
chrome.extension.onRequest.addListener(
  callback: function,
)

Пожалуйста, используйте runtime.onMessage .

Запускается, когда запрос отправляется либо из процесса расширения, либо из сценария содержимого.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

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

onRequestExternal

≤ MV2 устарел
chrome.extension.onRequestExternal.addListener(
  callback: function,
)

Пожалуйста, используйте runtime.onMessageExternal .

Запускается, когда запрос отправляется с другого расширения.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

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