来自本地文件系统的jQuery Ajax请求(Windows文件:///)

时间:2011-03-29 07:51:46

标签: jquery localhost wamp wampserver

我正在尝试执行ajax请求以获取在Windows Wamp Server上运行"http://localhost/"的内容。

脚本正在运行如下:

file:///C:/my/path/index.html

我只是使用标准的$ .ajax请求来尝试获取localhost的内容:

$.ajax({
          type: 'GET', 
          url: 'http://localhost/',
          success: function(data) {
            alert('success');
          }, error: function (data) {
            alert('failed');
          }
    });

我无法让它成功但是...似乎是本地文件系统的某些问题。我不太确定。

3 个答案:

答案 0 :(得分:15)

解决了问题!

我只需将此标题添加到http://localhost/

的index.php文件中

header('Access-Control-Allow-Origin: *');

无论如何,谢谢你的帮助!

答案 1 :(得分:11)

您说该脚本是从file:///网址运行的。最好不要从file URL执行AJAX请求,因为它们的处理方式不一致。例如,Chrome完全不允许使用它们。

但是,这里更大的问题是同源策略:您只能将AJAX请求发送到与网页本身相同的主机。 file:///http://localhost 相同的主机(即使它们是同一台计算机)。

最好将所有内容都关闭http://localhost

答案 2 :(得分:3)

这可能不起作用,因为浏览器会认为这是跨域请求。您已通过file:// URL访问该文件,但正尝试从http://localhost检索数据。尝试从http://localhost访问原始文件,它可能会开始工作。