Javascript Can';t从HTML5应用程序对本地Web服务器进行AJAX调用

Javascript Can';t从HTML5应用程序对本地Web服务器进行AJAX调用,javascript,jquery,ajax,html,same-origin-policy,Javascript,Jquery,Ajax,Html,Same Origin Policy,我正在尝试从HTML5应用程序向本地Web服务器发出一个简单的AJAX请求。 但是,因为客户端代码不是从Web服务器提供的,所以我得到 “访问控制允许原点不允许原点为空”错误 我已经尝试了以下帖子中描述的所有内容,但仍然不起作用: 如果我将服务器代码发布到Internet托管的服务器上,客户端应用程序就会工作。 但我希望它能与我的本地MAMP服务器一起工作,它运行在同一台笔记本电脑上 1) 在本地Web服务器上,我将以下内容添加到我的PHP控制器中: header('Access-Control

我正在尝试从HTML5应用程序向本地Web服务器发出一个简单的AJAX请求。 但是,因为客户端代码不是从Web服务器提供的,所以我得到 “访问控制允许原点不允许原点为空”错误

我已经尝试了以下帖子中描述的所有内容,但仍然不起作用:

如果我将服务器代码发布到Internet托管的服务器上,客户端应用程序就会工作。 但我希望它能与我的本地MAMP服务器一起工作,它运行在同一台笔记本电脑上

1) 在本地Web服务器上,我将以下内容添加到我的PHP控制器中:

header('Access-Control-Allow-Origin: *');
2) 这是我的HTML5客户端应用程序。由于服务器支持CORS,因此不需要JSONP

<html>

<head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.js"></script>
    <base href='http://192.168.15.12/'></base> <!-- local MAMP server -->     
    <script>

        $(document).ready(function() {
                $('#leadButton').click(function(){

                    $.getJSON(
                        'get/leaderboard',
                        function(data){
                            var leader;

                            leader = "<div> The top leader is from local webserver is: " +  data[0].name + "</div>";
                            $('#leaderboard').append(leader);
                            console.log(data);
                        }
                    );     
                });
        });
    </script>
</head>

<body>
    <div id="leaderboard">Leaderboard
        <button id="leadButton">Get Leaderboard</button>
    </div>
</body>
我错过了什么? 谢谢你的帮助

根据:

file:///Users/John/Desktop/index.html
不行。因为文件:///与localhost不同

您需要访问才能使其工作

我发现问题:

对本地Web服务器(192.168.15.12)的请求需要在$.getJSON请求中指定的完整URL:“http://192.168.15.12/get/leaderboard"

“base”标记没有前置“http://192.168.15.12/“指向jQuery调用中的URL

我还需要将以下Apache配置添加到我的.htaccess文件中,以启用跨源资源共享(CORS)(在PHP中这样做不可靠):


但我正在构建一个客户端应用程序;它不是从网站上提供的,所以你的建议不起作用。"file:///Users/John/Desktop/index.html“如果我的服务器代码部署在Internet服务器(例如www.myexternalserver.com)上,但不部署在本地Web服务器(192.168.15.12)上,则此项功能有效。”。
file:///Users/John/Desktop/index.html
 Header set Access-Control-Allow-Origin *