通过Chrome扩展程序中的AJAX访问192.168.x.x.

时间:2011-08-02 12:39:29

标签: javascript jquery ajax google-chrome-extension cross-domain

基本上,我有一个像这样的AJAX请求:

$.ajax({ url:     "http://192.168.0.100/",
         success: function(x) { console.log(x); }
       });

在扩展程序的manifest.json中定义了以下权限数组:

"permissions": [
    "notifications",
    "tabs",
    "*.*",
    "192.168.0.100",
    "192.168.0.100/*",
]

192.168.0.100的请求失败,并显示以下错误:

XMLHttpRequest cannot load http://192.168.0.100/.
Origin chrome-extension://<hash> is not allowed by Access-Control-Allow-Origin.

我已经做过的是在index.php中添加此标题:

Header("Access-Control-Allow-Origin: *");

但无济于事。

如何使本地IP的AJAX请求在Chrome扩展程序中运行?

1 个答案:

答案 0 :(得分:3)

尝试使用"http://192.168.0.100/*"代替"192.168.0.100/*"。需要指定方案,请参阅Match Patterns以供参考。