1

Я пытаюсь получить разрешение табуляции для текущего источника. Ex: Я нахожусь на http://stackoverflow.com, нажимая на значок, затем на кнопку из всплывающего окна, и я должен получить окно подсказки, чтобы разрешить манипулировать на этой вкладке.Расширение Chrome - Запросить дополнительные разрешения для текущей вкладки

Что я делаю:

  • манифеста
     
    ... 
    "permissions": ["tabs", "contextMenus"], 
    "optional_permissions": [ "<all_urls>" ], 
    ... 
    
  • всплывающее окно

     $('#reqPermision').click(function() 
    { 
        bg.reqPerm(url); 
    });

  • фон

     function reqPerm(url) 
    { 
        chrome.permissions.request({permissions: ['tabs'], origins: [url]}, function (granted) 
        { 
         log('permision:', granted) 
        }); 
    }

Что я получаю:

Ошибка во время permissions.request: Дополнительные разрешения должны быть указаны в манифесте расширения.

Если установить URL вручную (в данном отл. https://stackoverflow.com/) в массиве "optional_permissions", все работает, как мне нужно.

+0

Возможно, еще нет способа сделать это. Что делать, если вы используете '*: // */*' вместо ''? – apsillers

+0

Согласитесь на хром api, это то же самое. Да, я уже пробовал, и результат тот же. – flienteen

+0

Затем, вы должны ввести [запрос функции] (http://code.google.com/chrome/extensions/faq.html#faq-fea-02) для возможности добавления домена в качестве дополнительного разрешения без указания этого домена в вашем манифесте (или путем перечисления надмножества этого домена, например '*: // *. google.com/*' разрешает запрос для '*: // maps.google.com/*'). – apsillers

ответ

1

В настоящее время это невозможно, вы можете запросить разрешения только на URL-адреса, которые явно указаны в манифесте. Однако this feature request должен делать то, что вы пытаетесь сделать (автоматически разрешать при нажатии на действие браузера).

+1

Для записи было выполнено разрешение ['activeTab'] (https://developer.chrome.com/extensions/activeTab). – Xan

-2

во-первых, по желанию разрешения не допускается // ошибка в коде вторых вам нужно указать разрешение вкладки в массиве дополнительного разрешения вы сделали это

"permissions": ["tabs", "contextMenus"], "optional_permissions": [ "<all_urls>" ],

вы делаете это так

"permissions": [, "contextMenus"], "optional_permissions": [ 'tabs' ,<any other permission you want>],

третий вы должны проверить перед ним просить разрешения, и он не получил то вы Sh ould запросить его refference google optional permission

Смежные вопросы