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