首页 > 解决方案 > chrome.tabs.executeScript 无法在 amazon.com 上运行

问题描述

回调函数永远不会在亚马逊产品页面上被调用,例如: https ://www.amazon.com/AmazonBasics-0188-3-PACK-Multipurpose-Scissors/dp/B01BRGU8R0/ref=sr_1_13?dchild=1&keywords=amazonbasics&pf_rd_p=9349ffb9 -3aaa-476f-8532-6a4a5c3da3e7&pf_rd_r=14VHDM69CE2KAX6H70ED&qid=1596591703&sr=8-13

chrome.tabs.executeScript(tabId,
        {
            code: script,
            allFrames: true,
        },
        function (result) {
            console.log('run script result:', result);
            sendReplyToQuicker(true, "", result, msg.serial);
        })

简单到只有一行代码不会得到结果:

1;

在其他站点上运行此代码时:

后台页面登录其他站点

在亚马逊页面上运行此代码时,回调函数神经元调用:

在亚马逊页面上运行此代码时

扩展 manifest.json(完整代码):

{
  "name": "Quicker Chrome Connector",
  "version": "0.3.1",
  "manifest_version": 2,
  "description": "Native message connector with Quicker application",
  "background": {
    "scripts": [
      "main.js"
    ],
    "persistent": false
  },
  "content_scripts": [
    {
      "matches": [
        "<all_urls>"
      ],
      "js": [
        "jquery-3.5.1.min.js",
        "content.js"
      ],
      "all_frames": true
    }
  ],
  "icons": {
    "128": "icon-128.png"
  },
  "browser_action": {
    "default_popup": "popup.html"
  },
  "permissions": [
    "nativeMessaging",
    "tabs",
    "<all_urls>",
    "debugger"
  ],
  "optional_permissions":[
    "bookmarks",
    "browsingData",
    "topSites",    
    "downloads",
    "history",
    "pageCapture",
    "cookies",
    "sessions",
    "management"
  ],
  "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'",
  "homepage_url": "https://getquicker.net"
}

标签: google-chrome-extension

解决方案


推荐阅读