【求助】如果通过ajax获取豆瓣API的JSON

linhan35 2012-07-17 10:21:24
RT
我想通过AJAX获取豆瓣API的json data。
JS代码如下:

function testAjax() {
$.ajax({
url: "http://api.douban.com/book/subject/1220562?alt=json",
type: "GET",
dataType: "json",
success: function (data) {
$("#name").html(data.category.title.$t);
$("#age").html(data.category.author.name.$t);
$("#content").html(data.category.content.$t);
}

})
}


但是报错了,error msg是:
XMLHttpRequest cannot load http://api.douban.com/book/subject/1220562?alt=json. Origin http://localhost:51011 is not allowed by Access-Control-Allow-Origin.

请问各位大师,我在哪一步错了???

我上网查了一下,有一种叫jsonp的跨域调用json的做法。
改进了一下写法后,变成下面:
function testAjax() { 
$.ajax({
url: "http://api.douban.com/book/subject/1220562?alt=json",
type: "GET",
dataType: "json",
success: function (data) {
$("#name").html(data.category.title.$t);
$("#age").html(data.category.author.name.$t);
$("#content").html(data.category.content.$t);
}

})
}

但是虽然这样能够取到data了,但好像在取到data后要编译一次,
因为取到的data中有些肯定编译不过,于是又悲剧了。
可能还是我的写法有问题吧,肯定各位大师指正!!!!!!!!!!
...全文
285 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
linhan35 2012-07-17
  • 打赏
  • 举报
回复
在线等。。。。
linhan35 2012-07-17
  • 打赏
  • 举报
回复
在线等啊~~~~~
Go 旅城通票 2012-07-17
  • 打赏
  • 举报
回复
1跨域了,需要做代理

2,jsonp也需要动态页处理你发送的参数你才能获取到,不知道你说的编译指什么。jQuery jsonp跨域原理
chengrei 2012-07-17
  • 打赏
  • 举报
回复
LZ已经在javaeye
http://www.iteye.com/problems/86113
回复你了..
不知道这样是不是符合你的要求.

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧