我正在尝试使用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。
此致
答案 0 :(得分:1)
@Reigel - 不在同一个域名上。
您的问题是由于same-origin-policy
答案 1 :(得分:0)
由于@Reigel建议问题属于同源策略,所以我决定使用基于服务器的代码创建代理,该代码返回正确的json。