1

我試圖要求當前來源的選項卡權限。 例如:我在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 2012-04-16 17:29:13

+0

符合chrome的api這是同樣的事情。是的,我已經嘗試過了,結果是一樣的。 – flienteen 2012-04-16 22:02:17

+0

然後,是的,您應該添加[功能請求](http://code.google.com/chrome/extensions/faq.html#faq-fea-02),以便將域添加爲可選權限而無需在清單中列出該域(或列出該域的超集,例如'*:// *。google.com/*'允許對*:// maps.google.com/*'的請求)。 – apsillers 2012-04-17 00:13:56

回答

1

目前這是不可能的,您只能請求清單中明確列出的URL的權限。但是,this feature request應該使您正在嘗試執行的操作(在單擊瀏覽器操作時自動授予權限)可行。

+1

爲了記錄,['activeTab'權限](https://developer.chrome.com/extensions/activeTab)已被執行。 – Xan 2014-09-16 08:14:04

-2

是不允許//錯誤代碼 首先可選許可,其次,你需要可選許可 的數組你這樣做

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

在指定選項卡允許你做這樣的

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

第三,你才應該檢查申請許可並沒有授予那麼你SH ould要求它 refrating google optional permission

相關問題