getJSON函数始终返回null

时间:2010-07-27 06:48:18

标签: jquery json jsonp getjson

我正在尝试使用jquery getJSON函数来获取http请求。我已经像这样实现了它......

<script type="text/javascript">
$(function(){
$("#query").keyup(function(event) {
        keyword = $("#query").val();
        $.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?", showdata );
    });
});
function showdata(data, status) {
    alert(data + ":" + status);
}
</script>

这总是返回null。我检查了HTTP标头,它们也是空的。但是如果我直接使用URL,它会在浏览器窗口中显示JSON。

我做错了什么?

有人建议我应该使用JSONP,但在我实际使用的URL中,有一些我不想透露的敏感信息,所以我想坚持使用getJSON。

此致

2 个答案:

答案 0 :(得分:1)

  

@Reigel - 不在同一个域名上。

您的问题是由于same-origin-policy

答案 1 :(得分:0)

由于@Reigel建议问题属于同源策略,所以我决定使用基于服务器的代码创建代理,该代码返回正确的json。