permissions.contains()

Prüfen Sie, ob die Erweiterung die im angegebenen permissions.Permissions-Objekt aufgelisteten Berechtigungen hat.

Das Permissions-Argument kann entweder eine origins-Eigenschaft enthalten, die ein Array von Host-Berechtigungen ist, oder eine permissions-Eigenschaft, die ein Array von API-Berechtigungen ist, oder beides.

Dies ist eine asynchrone Funktion, die ein Promise zurückgibt. Das Promise wird nur dann mit true erfüllt, wenn die Erweiterung aktuell alle angegebenen Berechtigungen hat. Für Host-Berechtigungen gilt: Wenn die Berechtigungen der Erweiterung mit den in origins aufgeführten Berechtigungen musterübereinstimmen, werden sie als übereinstimmend betrachtet.

Syntax

js
let getContains = browser.permissions.contains(
  permissions                // Permissions object
)

Parameter

Rückgabewert

Ein Promise, das mit true erfüllt wird, wenn die Erweiterung bereits alle im permissions-Argument aufgelisteten Berechtigungen hat, oder andernfalls mit false.

Browser-Kompatibilität

BCD tables only load in the browser

Beispiele

js
// Extension permissions are:
// "webRequest", "tabs", "*://*.mozilla.org/*"

let testPermissions1 = {
  origins: ["*://mozilla.org/"],
  permissions: ["tabs"],
};

const testResult1 = await browser.permissions.contains(testPermissions1);
console.log(testResult1); // true

let testPermissions2 = {
  origins: ["*://mozilla.org/"],
  permissions: ["tabs", "alarms"],
};

const testResult2 = await browser.permissions.contains(testPermissions2);
console.log(testResult2); // false, "alarms" doesn't match

let testPermissions3 = {
  origins: ["https://developer.mozilla.org/"],
  permissions: ["tabs", "webRequest"],
};

const testResult3 = await browser.permissions.contains(testPermissions3);
console.log(testResult3); // true: "https://developer.mozilla.org/", matches: "*://*.mozilla.org/*"

let testPermissions4 = {
  origins: ["https://example.org/"],
};

const testResult4 = await browser.permissions.contains(testPermissions4);
console.log(testResult4); // false: "https://example.org/", `origins` doesn't match

Beispiel-Erweiterungen

Hinweis: Diese API basiert auf der chrome.permissions API von Chromium.