runtime.getContexts()
Gibt Informationen über die mit der Erweiterung verbundenen Kontexte zurück.
Syntax
let gettingContexts = await browser.runtime.getContexts(
filter // object
);
Parameter
filter
-
Ein Objekt, das Kriterien enthält, um zurückgegebene Kontexte abzugleichen. Übereinstimmende Kontexte müssen alle angegebenen Filter erfüllen. Wenn das Objekt leer ist, werden alle Kontexte zurückgegeben.
contextIds
Optional-
Ein Array von
string
. Die IDs der Kontexte, die zurückgegeben werden sollen. contextTypes
Optional-
Ein Array von
string
. Die Typen von Erweiterungsansichten, die mit den zurückzugebenden Kontexten verbunden sind. Nimmt die Werte"BACKGROUND"
,"POPUP"
,"SIDE_PANEL"
und"TAB"
an. documentIds
Optional-
Ein Array von
string
. UUIDs von Dokumenten, die mit den zurückzugebenden Kontexten verbunden sind. documentOrigins
Optional-
Ein Array von
string
. Die Ursprünge von Dokumenten, die mit den zurückzugebenden Kontexten verbunden sind. documentUrls
Optional-
Ein Array von
string
. Die URLs von Dokumenten, die mit den zurückzugebenden Kontexten verbunden sind. frameIds
Optional-
Ein Array von
integer
. Die Frame-IDs für die zurückzugebenden Kontexte. incognito
Optional-
boolean
. Ob nur Kontexte zurückgegeben werden, die in einem privaten Browsertab gehostet sind. tabIds
Optional-
Ein Array von
integer
. Die Tab-IDs für die zurückzugebenden Kontexte. windowIds
Optional-
Ein Array von
integer
. Die Fenster-IDs für die zurückzugebenden Kontexte.
Rückgabewert
Ein Promise
, das mit einem Array von Objekten erfüllt wird, eines für jeden Kontext, der Erweiterungsinhalt hostet. Die Objekte haben folgende Eigenschaften:
contextId
-
string
. ID des Kontextes. contextType
-
string
. Der Typ der Erweiterungsansicht. Wird als einer von"BACKGROUND"
,"POPUP"
,"SIDE_PANEL"
oder"TAB"
zurückgegeben. documentId
-
string
. UUID des mit dem Kontext verbundenen Dokuments oder undefined, wenn der Kontext nicht in einem Dokument gehostet wird. documentOrigin
-
string
. Der Ursprung des mit dem Kontext verbundenen Dokuments oder undefined, wenn der Kontext nicht in einem Dokument gehostet wird. documentUrl
-
string
. Die URL des mit dem Kontext verbundenen Dokuments oder undefined, wenn der Kontext nicht in einem Dokument gehostet wird. frameId
-
integer
. Die Frame-ID für den Kontext oder-1
, wenn der Kontext nicht in einem Frame gehostet wird. incognito
-
boolean
. Ob der Kontext in einem privaten Browsertab gehostet wird. tabId
-
integer
. Die Tab ID für den Kontext oder-1
, wenn der Kontext nicht in einem Tab gehostet wird. windowId
-
integer
. Die Fenster-ID für den Kontext oder-1
, wenn der Kontext nicht in einem Fenster gehostet wird.
Wenn keine passenden Kontexte vorhanden sind, wird ein leeres Array erfüllt.
Beispiele
Dieses Beispiel holt alle mit der Erweiterung verbundenen Kontexte in privaten Browsertabs und gibt die Tab-ID, die Frame-ID und die Dokument-URL für jeden Kontext in die Konsole aus:
function gotContextInfo(contexts) {
for (const context of contexts) {
if (context.tabId === -1) {
console.log("Not hosted in a tab");
} else {
console.log(
`Hosted in tab: ${context.tabId} and frame ${context.frameId} with URL ${context.documentUrl}`,
);
}
}
}
let gettingContextInfo = browser.runtime.getContexts({ incognito: true });
gettingContextInfo.then(gotContextInfo);