我创建了一个Flickr帐户,创建了一个应用并获得了我的API密钥,创建了一些照片集并使用他们的API资源管理器测试了API调用以获取以下URL来调用:
在浏览器中这很好用,但是通过jQuery调用它绝不会返回任何内容 - 使用FireBug进行检查。
这是我的jQuery代码:
var url = 'http://api.flickr.com/services/rest/?method=flickr.photosets.getList&api_key=78ac01418165186ee9be695c61a5d53f&user_id=21466829%40N07&format=json';
$.getJSON(url, function (data) {
var list = $("<ul></ul>");
$.each(data.photosets.photoset, function (i, set) {
var link = $("<a/>").attr("title", set.description._content)
.attr("href", "http://www.flickr.com/photos/mjryall/sets/" + set.id)
.text(set.title._content);
var li = $("<li/>").append(link).append(" (" + set.photos + ")");
$(list).append(li);
});
$("#flickr-sets").append(list);
});
我还为此应用设置了公开的网站,标记和权限。这应该是没有道理的 - 我在这里缺少什么?
答案 0 :(得分:2)
将“&amp; nojsoncallback = 1”添加到您网址的末尾,它应该有效。
问题是,没有它,Flickr会使用函数包装器返回数据。 jsoncallback参数告诉它发送原始JSON。
请参阅此处的“回拨函数”部分:http://www.flickr.com/services/api/response.json.html