Chrome扩展程序可从外部连接到任何本地IP

时间:2014-11-27 13:09:49

标签: google-chrome-extension manifest

我正在构建一个应该与一个或多个网站一起使用(外部连接)的chrome扩展程序。为了测试它,我在本地网络的服务器上运行该网站,并从本地网络中已安装扩展的计算机连接到该网站。

我试过这样的事情

"externally_connectable": {
"matches": [
    "http://192.168.1.109:8080/*"
],
"accepts_tls_channel_id": false
},

manifest.json文件中但它没有用。理想情况下,我希望允许所有网址至少在开发过程中连接。

2 个答案:

答案 0 :(得分:2)

不幸的是你做不到。

引用the docs

  

网址格式必须至少包含二级域名 - 即"*""*.com""*.co.uk"和{{等主机名模式1}}被禁止。

虽然这并不是特别禁止知识产权,但显然他们不能工作,在任何情况下你都不能给a wildcard for any site

  

模式不能包含通配符域,也不能包含(effective) top level domains的子域; "*.appspot.com"*://google.com/*有效,而http://*.chromium.org/*<all_urls>http://*/*甚至*://*.com/*都不是。

要进行测试,您可以在操作系统的hosts file中为您的本地地址分配二级域名。

答案 1 :(得分:0)

可以通过 include_globes() 来实现。

像这样

"content_scripts": [
        {
            "matches": ["http://*/*", "https://*/*"],
            "include_globs": ["http://127.0.*.1:*/*"],
            "run_at": "document_idle",
            "js": ["contentScript.js"]
        }
    ],