2

現在のオリジンにタブ権限を要求しようとしています。例: http://stackoverflow.comで、バッジをクリックしてからポップアップのボタンをクリックすると、このタブでの操作を許可するプロンプト ボックスが表示されます。

私がやっていること:

  • マニフェスト
    ...
    "パーミッション": ["タブ", "contextMenus"],
    "optional_permissions": [ "<all_urls>"],
    ...
    
  • 現れる

    $('#reqPermision').click(関数()
    {
        bg.reqPerm(URL);
    });

  • バックグラウンド

    関数 reqPerm(url)
    {
        chrome.permissions.request({permissions: ['tabs'], origins: [url]}, function (許可)
        {
            log('パーミッション:', 付与)
        });
    }

私が得ているもの:

permissions.request中のエラー: オプションのアクセス許可は、拡張マニフェストに記載されている必要があります。

「optional_permissions」配列に手動でURLを設定すると(この例ではhttps://stackoverflow.com/) 、すべてが必要に応じて機能します。

4

3 に答える 3

0

これは現在不可能です。マニフェストに明示的にリストされている URL のアクセス許可のみをリクエストできます。ただし、この機能要求により、実行しようとしていることが実行可能になります (ブラウザー アクションをクリックすると、自動的にアクセス許可が付与されます)。

于 2012-04-25T20:01:46.323 に答える
-2

まず、オプションのアクセス許可は許可されていません//コードでエラーが発生しました。次に、オプションのアクセス許可の配列でタブのアクセス許可を指定する必要があります。

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

あなたはこのようにします

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

3番目に、許可を要求する前に確認する必要があり、許可されていない場合は、 Googleのオプションの許可を参照して要求する必要があります

于 2014-09-16T05:31:33.030 に答える