-2

我的目标是使用 json 从我的服务器检索数据。当我运行这段代码时,我什么也没有。我不知道我做错了什么。

<!DOCTYPE html>
<html>
<head>
    <script>
        function fn_getdata()
            {
                $.getJSON("http://arvianne.com/android/index.php", function(data) {
                    alert(data.contacts);
                });
            }
    </script>
</head>
<body>
    <div id="iddiv_con"></div>
    <button onclick="fn_getdata()">Get Data</button>
</body>

4

3 回答 3

1
You are violating the same origin policy

您应该将 json 包装在回调函数中。

使用 jsonp 而不是简单的 json 。

于 2013-01-15T04:28:23.350 回答
1

使用 firefox/firebug chrome/dev 工具来监控错误消息 - 一分钱一分钱你遇到了“同源”问题维基百科

于 2013-01-15T04:30:15.790 回答
0

由于您的代码在 中运行,localhost并且您试图访问位于arvianne.comvia的资源ajax,因此您违反了同源策略,这就是您的 ajax 请求不起作用的原因。

如果您使用 firebug/developer 工具栏监控您的 ajax 请求,您会看到类似XMLHttpRequest cannot load http://arvianne.com/android/index.php. Origin http://fiddle.jshell.net is not allowed by Access-Control-Allow-Origin..

如果可能的话,您可以将jsonp视为一种可能的解决方案。

于 2013-01-15T07:20:48.913 回答