我昨晚大部分时间都在针对 Flickr API 尝试 JQuery 中的“getJSON”方法。我设法查看了 JQuery 文档中的一些示例并设法使它们工作,但是从我的自定义 API 调用中读取 JSON 的尝试失败了。
片段:
这有效:
//JQuery Flickr example code - works!
$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?jsoncallback=?&format=json",
function(data) {
$.each(data.items, function(i,item){
alert(item.media.m);
if ( i == 3 ) return false;
});
});
这失败了!
//Custom Flickr API Call - nothing?fail?
$.getJSON("http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=c258d8ae4c29bb74da198c6ac3874671&text=Mclaren&per_page=3&format=json&callback=?&nojsoncallback=1",
function(data) {
alert(data);
}).error(function(jqXHR, textStatus, errorThrown) { alert(textStatus + errorThrown); });
第二个 API 调用是有效资源,它在浏览器/提琴手中工作,我可以看到 JSON 内容,但在我的 JS 代码中引发了错误
"parsererrorError: jQuery18007627279118169099_1345796861535 was not called".
此时我被卡住了,最终我的最终目标是处理返回的 JSON 并迭代嵌套数组中的每个“照片”对象,以便我可以在迭代期间轻松访问它们的子属性,如下所示:
[照片实例].id
[照片实例].owner
[照片实例].secret 等...
任何帮助将不胜感激。
参考: http ://www.flickr.com/services/api/response.json.html
注意:所有 API 密钥都用于测试目的,很快就会被销毁。