XMLHttpRequest无法加载file://..访问控制允许原点不允许原点为null

XMLHttpRequest cannot load file://... Origin null is not allowed by Access-Control-Allow-Origin

本文关键字:原点 null 不允许 许原点 加载 file 访问控制 XMLHttpRequest      更新时间:2023-09-26

我看到上面的问题是早些时候问的,但即使在介绍了他们之后,我也无法找到解决问题的方法,因此我冒昧地开始了一篇关于这个问题的新文章。

我有一个getjson.html文件,其中包含以下代码

<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("button").click(function(){
    $.getJSON("json_data.txt",function(result){
      $.each(result, function(i, field){
        $("div").append(field + " ");
      });
    });
  });
});
</script>
</head>
<body>
<button>Get JSON data</button>
<div></div>
</body>
</html>

json_data.txt包含以下内容,

{ 
  "firstName": "John",
  "lastName": "Doe",
  "age": 25
}

当我在浏览器中打开getjson.html文件时,它会给出一个错误:

"无法加载XMLHttpRequestfile://.....访问控制允许原点不允许原点为null。"

有人请就这件事提出一个简单的解决方案,我该如何使这件事成为可能。

附言:我正在写一个网络应用程序。

是否直接打开HTML文件?该文件需要放置在web服务器上,然后执行。出于安全原因,浏览器通常不允许AJAX调用使用file:///协议。

我读到你的问题有点晚(2013年春季),我想我已经在一个文件中找到了CORS XHR跨域限制的解决方案://context!

我已经把这个标题放在我的远程php脚本上:

header('Access-Control-Allow-Origin: '.$_SERVER['HTTP_ORIGIN']);

而且它似乎起作用了!更多解释如下:Rannpháirtíanaithnid/CORS

它可能在"电话间隙"应用程序上工作,而不是使用jquery和jsonp?