chrome.extension

Opis

Interfejs chrome.extension API zawiera narzędzia, z których może korzystać każda strona rozszerzenia. Obejmuje to obsługę wymiany wiadomości między rozszerzeniem a jego skryptami dotyczącymi treści lub między rozszerzeniami, co zostało szczegółowo opisane w sekcji Przekazywanie wiadomości.

Typy

ViewType

Chrome 44 lub nowszy

Typ widoku rozszerzenia.

Typ wyliczeniowy

„tab”

"popup"

Właściwości

inIncognitoContext

Wartość „true” w przypadku skryptów dotyczących zawartości działających na kartach incognito i stron rozszerzeń działających w procesie incognito. Dotyczy to tylko rozszerzeń z ustawieniem incognito_behavior ustawionym na „split”.

Typ

Wartość logiczna

lastError

≤ MV2 Wycofane w Chrome 58

Użyj runtime.lastError.

Ustawia 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ść

    ciąg znaków

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

Metody

getBackgroundPage()

Tylko pierwszy plan
chrome.extension.getBackgroundPage(): Window | undefined

Zwraca obiekt JavaScript „window” strony tła działającej w bieżącym rozszerzeniu. Zwraca wartość null, jeśli rozszerzenie nie ma strony w tle.

Zwroty

  • Window | undefined

getExtensionTabs()

≤ MV2 Tylko na pierwszym planie Wycofane
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, zwraca tylko obiekty „window” kart dołączonych do określonego okna.

Parametry

  • windowId

    number opcjonalny

Zwroty

  • Window[]

    Tablica globalnych obiektów okna

getURL()

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

Użyj runtime.getURL.

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

Parametry

  • ścieżka

    ciąg znaków

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

Zwroty

  • ciąg znaków

    Pełny adres URL zasobu.

getViews()

Tylko pierwszy plan
chrome.extension.getViews(
  fetchProperties?: object,
)
: Window[]

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

Parametry

  • fetchProperties

    obiekt opcjonalny

    • tabId

      number opcjonalny

      Chrome 54 lub nowsza

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

    • typ

      ViewType opcjonalny

      Typ widoku do pobrania. Jeśli ten parametr zostanie pominięty, funkcja zwróci wszystkie widoki (w tym strony i karty w tle).

    • windowId

      number opcjonalny

      Okres, w którym ma być prowadzone wyszukiwanie. Jeśli ten parametr zostanie pominięty, funkcja zwróci wszystkie widoki.

Zwroty

  • Window[]

    Tablica obiektów globalnych

isAllowedFileSchemeAccess()

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

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

Parametry

  • callback

    funkcja opcjonalna

    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 wartość false.

Zwroty

  • Promise<boolean>

    Chrome 99 lub nowsza

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.

isAllowedIncognitoAccess()

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

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

Parametry

  • callback

    funkcja opcjonalna

    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

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.

sendRequest()

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

Użyj runtime.sendMessage.

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

Parametry

  • extensionId

    string opcjonalny

    Identyfikator rozszerzenia, z którym chcesz się połączyć. Jeśli ten argument nie zostanie podany, domyślnie będzie to Twoje rozszerzenie.

  • żądanie

    każdy

  • callback

    funkcja opcjonalna

    Chrome 99 lub nowsza

    Parametr callback wygląda tak:

    (response: any) => void

    • odpowiedź

      każdy

      Obiekt odpowiedzi JSON wysłany przez moduł obsługi żądania. Jeśli podczas łączenia z rozszerzeniem wystąpi błąd, wywołanie zwrotne zostanie wywołane bez argumentów, a wartość runtime.lastError zostanie ustawiona na komunikat o błędzie.

Zwroty

  • Promise<any>

    Chrome 99 lub nowsza

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą 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ń Chrome.

Parametry

  • dane

    ciąg znaków

Wydarzenia

onRequest

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

Użyj runtime.onMessage.

Wywoływane, 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.

Wysyłane, gdy prośba jest wysyłana 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