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

我试图做一个Ajax请求来获取在Windows Wamp服务器上运行的"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'); } }); 

我不能让它成功,虽然…似乎是本地文件系统或一些问题。 我不太确定。

问题解决了!

我只需要将这个头添加到我的index.php文件的http:// localhost /

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

感谢您的帮助无论如何家伙!

你说这个脚本是从一个file:/// URL中运行的。 最好不要从file URL中做AJAX请求,因为它们被不一致地处理。 例如,Chrome完全禁止它们。

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

最好是从http://localhost运行所有的东西。

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