Error in Chrome only: XMLHttpRequest cannot load file URL No 'Access-Control-Allow-Origin' header is present on the requested resource,如何解决?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (97)

我正在学习一个书的例子,因此代码非常简单。

这是代码:

jQuery.get("ajax_search_results.php",
           { s:search_query },
           write_results_to_page, "html");

代码是ajax_search_results.php有:

<div id="ajax_search_results">
 <ul>
 <li><a href="#">First result</a></li>
 <li><a href="#">Second result</a></li>
 <li><a href="#">Third result</a></li>
 <li><a href="#">More...</a></li>
 </ul>
</div>

在Chrome中,我可以看到JS控制台中的错误:

XMLHttpRequest cannot load 
file:///C:/xampp/xampp/htdocs/snk/ajax_search_results.php?s=keyword. 
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'null' is therefore not allowed access.

你能帮我找出问题吗?

提问于
用户回答回答于

把这个加到文件的顶部,

header('content-type: application/json; charset=utf-8');
header("access-control-allow-origin: *");
用户回答回答于

如果您的问题在使用GoogleChrome时如下所示:

[XMLHttpRequest cannot load file. Received an invalid response. Origin 'null' is therefore not allowed access.]

然后通过以下步骤创建一个批处理文件:

start "chrome" "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --allow-file-access-from-files exit

扫码关注云+社区