使用JSONP跨域

时间:2010年07月02日作者:愚人码头查看次数:4,754 views评论次数:0

从 1.2 版本开始,jQuery 拥有对 JSONP 回调的本地支持。如果指定了 JSONP 回调,就可以加载位于另一个域的 JSON 数据,回调的语法为:

1
url?callback=?

。jQuery 自动将 ? 替换为要调用的生成函数名。

我们使用 

1
?

作为回调函数名,而非真实的函数名。因为 jQuery 会用生成的函数名替换 

1
?

这里做了一个简单的flickr照片的跨域处理:


$(function() {
$.getJSON('http://api.flickr.com/services/feeds/photos_public.gne?id=51666465@N04&tagmode=any&format=json&jsoncallback=?', function(data) {
$.each(data.items, function(i, item) {
$(item.description).appendTo("body")
});
});
});

http://api.flickr.com/services/feeds/photos_public.gne?id=51666465@N04&tagmode=any&format=json

是我照片的json数据,加上callback回调函数

http://api.flickr.com/services/feeds/photos_public.gne?id=51666465@N04&tagmode=any&format=json&jsoncallback=?

非常简单,实用!

点击查看demo:http://www.css88.com/demo/ajax-jsonP/

参照网址:

http://www.ibm.com/developerworks/cn/web/wa-aj-jsonp1/index.html

http://www.ibm.com/developerworks/cn/web/wa-aj-jsonp2/index.html

声明: 本文采用 BY-NC-SA 协议进行授权 | WEB前端开发
转载请注明转自《使用JSONP跨域

如果你读了我的文章,觉得有帮助: 说明
标签:,分类:JS
0条评论

暂时没有评论!

发表评论

*

*