chrome.extension

refresh date: 2026-09-25 robots: noindex

Opis

Interfejs API chrome.extension zawiera narzędzia, których można używać na dowolnej stronie rozszerzenia. Obejmuje obsługę wymiany wiadomości między rozszerzeniem a jego skryptami treści lub między rozszerzeniami, jak opisano szczegółowo w artykule Przekazywanie wiadomości.

Typy

ViewType

Chrome 44 lub nowsza wersja

Typ widoku rozszerzenia.

Typ wyliczeniowy

"tab"

"popup"

Właściwości

inIncognitoContext

Wartość „true” w przypadku skryptów treści uruchamianych na kartach incognito i stron rozszerzeń uruchamianych w procesie incognito. Ta druga opcja dotyczy tylko rozszerzeń z ustawieniem „split” w polu incognito_behavior.

Typ

wartość logiczna

lastError

≤ MV2 Wycofane od wersji Chrome 58

Użyj runtime.lastError.

Ustawiane na czas trwania wywołania zwrotnego, jeśli asynchroniczny interfejs API rozszerzenia spowodował błąd. Jeśli nie wystąpił żaden błąd, lastError będzie mieć wartość undefined.

Typ

obiekt

Właściwości

  • wiadomość

    tekst

    Opis błędu, który wystąpił.

Metody

getBackgroundPage()

Tylko na pierwszym planie
chrome.extension.getBackgroundPage(): Window | undefined

Zwraca obiekt „window” JavaScriptu dla strony działającej w tle w bieżącym rozszerzeniu. Jeśli rozszerzenie nie ma strony działającej w tle, zwraca wartość null.

Zwroty

  • Okno | niezdefiniowane

getExtensionTabs()

≤ MV2 Tylko na pierwszym planie Wycofano
chrome.extension.getExtensionTabs(
  windowId?: number,
)
: Window[]

Użyj extension.getViews {type: "tab"}.

Zwraca tablicę obiektów „window” JavaScriptu dla każdej karty działającej w bieżącym rozszerzeniu. Jeśli podano windowId, zwracane są tylko obiekty „window” kart dołączonych do określonego okna.

Parametry

  • windowId

    number optional

Zwroty

  • Okno[]

    Tablica globalnych obiektów okna

getURL()

≤ MV2 Wycofane od wersji Chrome 58
chrome.extension.getURL(
  path: string,
)
: string

Użyj runtime.getURL.

Konwertuje ścieżkę względną w katalogu instalacyjnym rozszerzenia na pełny i jednoznaczny URL.

Parametry

  • ścieżka

    tekst

    Ścieżka do zasobu w rozszerzeniu wyrażona względem katalogu instalacji.

Zwroty

  • tekst

    Pełny i jednoznaczny URL zasobu.

getViews()

Tylko na pierwszym planie
chrome.extension.getViews(
  fetchProperties?: object,
)
: Window[]

Zwraca tablicę obiektów „window” JavaScriptu dla każdej strony działającej w ramach bieżącego rozszerzenia.

Parametry

  • fetchProperties

    object opcjonalny

    • tabId

      number optional

      Chrome 54 lub nowsza wersja

      Znajdź widok według identyfikatora karty. Jeśli pominiesz to pole, zostaną zwrócone wszystkie widoki.

    • typ

      ViewType opcjonalny

      Typ widoku, który chcesz uzyskać. Jeśli zostanie pominięty, zwracane są wszystkie widoki (w tym strony i karty w tle).

    • windowId

      number optional

      Okno, do którego ma zostać ograniczone wyszukiwanie. Jeśli go pominiesz, zostaną zwrócone wszystkie widoki.

Zwroty

  • Okno[]

    Tablica obiektów globalnych

isAllowedFileSchemeAccess()

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

Pobiera stan dostępu rozszerzenia do schematu „file://”. Odpowiada to kontrolowanemu przez użytkownika ustawieniu „Zezwalaj na dostęp do adresów URL plików” dla poszczególnych rozszerzeń, które jest dostępne na stronie chrome://extensions.

Parametry

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      wartość logiczna

      Wartość „true”, jeśli rozszerzenie ma dostęp do schematu „file://”, w przeciwnym razie „false”.

Zwroty

  • Promise<boolean>

    Chrome 99 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

isAllowedIncognitoAccess()

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

Pobiera stan dostępu rozszerzenia do trybu incognito. Odpowiada to kontrolowanemu przez użytkownika ustawieniu „Zezwalaj w trybie incognito” dla poszczególnych rozszerzeń, które jest dostępne na stronie chrome://extensions.

Parametry

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      wartość logiczna

      Wartość true, jeśli rozszerzenie ma dostęp do trybu incognito. W przeciwnym razie wartość false.

Zwroty

  • Promise<boolean>

    Chrome 99 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

sendRequest()

Promise &leq; MV2 Wycofane
chrome.extension.sendRequest(
  extensionId?: string,
  request: any,
  callback?: function,
)
: Promise<any>

Użyj runtime.sendMessage.

Wysyła pojedyncze żądanie do innych detektorów w rozszerzeniu. Podobnie jak runtime.connect, ale wysyła tylko jedno żądanie z opcjonalną odpowiedzią. Zdarzenie extension.onRequest jest wywoływane na każdej stronie rozszerzenia.

Parametry

  • extensionId

    ciąg znaków opcjonalny

    Identyfikator rozszerzenia, z którym chcesz się połączyć. Jeśli zostanie pominięty, domyślnie używane jest Twoje rozszerzenie.

  • żądanie

    każdy

  • callback

    function opcjonalne

    Chrome 99 lub nowsza wersja

    Parametr callback wygląda tak:

    (response: any) => void

    • odpowiedź

      każdy

      Obiekt odpowiedzi JSON wysłany przez moduł obsługi żądania. Jeśli podczas nawiązywania połączenia z rozszerzeniem wystąpi błąd, obietnica zostanie odrzucona.

Zwroty

  • Promise<any>

    Chrome 99 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

setUpdateUrlData()

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

Ustawia wartość parametru CGI ap używanego w adresie URL aktualizacji rozszerzenia. Ta wartość jest ignorowana w przypadku rozszerzeń hostowanych w galerii rozszerzeń do Chrome.

Parametry

  • dane

    tekst

Wydarzenia

onRequest

&leq; MV2 Wycofane
chrome.extension.onRequest.addListener(
  callback: function,
)

Użyj runtime.onMessage.

Uruchamiane, gdy żądanie jest wysyłane z procesu rozszerzenia lub skryptu treści.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

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

    • żądanie

      każdy

    • sendResponse

      funkcja

      Parametr sendResponse wygląda tak:

      () => void

onRequestExternal

&leq; MV2 Wycofane
chrome.extension.onRequestExternal.addListener(
  callback: function,
)

Użyj runtime.onMessageExternal.

Uruchamiane, gdy żądanie jest wysyłane z innego rozszerzenia.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

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

    • żądanie

      każdy

    • sendResponse

      funkcja

      Parametr sendResponse wygląda tak:

      () => void