1

我正在尝试编写一个 jQuery 脚本,该脚本可以从我无权访问的服务器读取 JSON 文件。我的两个脚本是 PHP 代理脚本:

<?php 

$content=file_get_contents($_GET['http://fixyourstreet.ie/api?task=incidents&by=catname&name=Litter%20and%20Illegal%20Dumping']);
echo $content;
?>

还有一个 jQuery 脚本:

 <script>
$.getJSON( "proxy.php", function() {
  console.log( "success" );
});
 </script>

当我在 chrome 中运行它时,我在控制台中收到以下错误:

>1 OPTIONS file:///C:/xampp/htdocs/json/proxy.php Origin null is not allowed by Access-Control-Allow-Origin. jquery-1.9.1.js:8526

>2 XMLHttpRequest cannot load file:///C:/xampp/htdocs/json/proxy.php. Origin null is not allowed by Access-Control-Allow-Origin.

我不明白为什么即使在我制作了 PHP 代理脚本之后我仍然会收到 Control-Allow-Origin 错误。

任何帮助将非常感激!

4

2 回答 2

2

Access-Control-Allow-Origin在返回响应之前,在您的休息服务中设置一个名为an addressor的标头参数public by setting *

于 2013-10-04T09:14:41.983 回答
0

file:///C:/xampp/htdocs/json/proxy.php - 您显然使用 jQuery 从文件系统打开了文件,这不适用于 chrome,可能还有其他浏览器。你需要网络服务器来执行你的proxy.php。

解决方案:http://localhost/json/在您的浏览器中访问。

于 2013-10-04T09:22:51.070 回答