Spec-Zone.ru › Web Extensions

permissions.contains()

Проверка, обладает ли расширение разрешениями, перечисленными в заданном объекте permissions.Permissions.

Аргумент Permissions может содержать свойство origins, которое является массивом разрешений доступа к хостам, или свойство permissions, которое является массивом разрешений API, или оба.

Это асинхронная функция, которая возвращает Promise. Обещание выполняется со значением true только в том случае, если расширение в настоящее время обладает всеми указанными разрешениями. Для разрешений доступа к хостам, если разрешения расширения соответствуют образцам разрешениям, перечисленным в origins, они считаются соответствующими.

Синтаксис

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

Параметры

permissions

Объект permissions.Permissions.

Возвращаемое значение

Обещание Promise, которое будет выполнено со значением true если расширение уже обладает всеми разрешениями, перечисленными в аргументе permissions, или false в противном случае.

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet
contains Да 79 55 ? Да 14 ? ? 79 ? 15 ?

Примеры

// 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/"
                          // does not match

Примечание: Этот API основан на API chrome.permissions Chromium.

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/permissions/contains

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API