2016-05-07 8 views
1

:URLのコンテンツにアクセスすることはできません「text/htmlで、chromewebdataデータ」:未確認runtime.lastError tabs.executeScriptを実行している間:私はこのエラーを取得してい

extensions::lastError:133 Unchecked runtime.lastError while running tabs.executeScript: Cannot access contents of url "data:text/html,chromewebdata". Extension manifest must request permission to access this host. 

私はインターネットを無効にした後、このエラーを取得していますページの読み込みが失敗した場合(負荷が重いため)またはインターネットがダウンした場合に対処できるようになりました。

私はすべての同様の質問とthis almost similarを確認しましたが、まだ動作させることはできません。

chrome.tabs.executeScript(null, {file: "showbacklink.js"}); 

または

chrome.tabs.executeScript(details.tabId, {file: "showbacklink.js"}); 

"permissions": [ 
     "tabs","unlimitedStorage", "notifications", "history", "activeTab", "storage", "webRequest", "webRequestBlocking", "*://*/*", "http://*/*", "https://*/*" 
    ], 

私はこのコードを実行すると、私はエラーを取得する:クロム内部ページ

私の権限のハイジャックのように見えることはできませんことをコメントしてAnother very similar one

ここでdetails.tabIdはアクティブなタブです。

私には何が欠けていますか?

編集manifest.jsonを実際

{ 
    "name": "", 
    "options_page": "options.html", 
    "description": "", 
    "version": "1.0", 
    "icons": { 
     "16": "icons/logo16.png", 
     "48": "icons/logo48.png", 
     "128": "icons/logo128.png" 
    }, 
    "permissions": [ 
     "tabs","unlimitedStorage", "notifications", "history", "activeTab", "storage", "webRequest", "webRequestBlocking", "http://*/*", "https://*/*" 
    ], 
    "background": { 
     "scripts": [ 
     "showbacklink.js", 
      "client_server_common.js", 
      "common.js", 
      "background.js" 

     ], 
     "persistent": true 
    }, 

    "content_security_policy": "script-src 'self'; object-src 'self'", 
    "manifest_version": 2, 
    "content_scripts": [ 
     { 
      "run_at": "document_end", 
      "all_frames": true, 
      "matches": ["https://*/*"], 
      "css": [//REMOVED], 
      "js": [ //other files REMOVED 
       "myscript.js", 

      ] 
     }, 


    ], 
    "web_accessible_resources": [ //REMOVED 
    ] 


} 
+0

あなたはHaibara Ai [回答](http://stackoverflow.com/questions/36762389/chrome-extension-injecting-script-get-error)に従ってみましたか? {(var i = 0; i

+0

@ user5858、 'manifest.json'ファイル全体を投稿できますか?また、どのページに 'showbacklink.js'を注入したいのですか? –

+0

@HaibaraAiコンテンツスクリプトまたはウェブページに 'showbacklink.js'というコードを注入したいです – user5858

答えて

2

を示す「オフライン」ページ、または他の任意のエラーページではなく、その「元の」URLのクロム内部ページとして扱われます。したがって、セキュリティ上の理由から、を変更するページには挿入できません。拡張機能がSSL警告ページと対話できるようになると想像してください。、実際にはは不要です。

何らかの代替エラーページを提供することを目標とする場合は、そのようなナビゲーションエラーのリスナーをフックして、自分のページにリダイレクトする必要があります。

webNavigationwebRequest APIをご覧になることをおすすめします。

+0

を使用してください。このエラーの間に、ステップ1に戻るためにクリックする必要があるリンクを提供します。現時点では、このリンクをポップアップに追加しましたが、ユーザーはオプションアイコンをクリックする必要があります。 – user5858

+0

リンクがあり、代替エラーページが表示された場合は、そのリンクを使用できます。 – Xan

+0

あなたはページをいくつかのカスタムページにリダイレクトすることを意味しますか?元のエラー/問題がユーザーの視界から失われる可能性があるので、私が避けたいものです。エラーページにリンクを挿入して、ユーザーがエラーを認識し、直ちに救済リンクをクリックできるようにするのが最善です。 – user5858

関連する問題