获取照片集的JQuery / Flickr API问题

时间:2010-07-28 15:03:35

标签: jquery api flickr

我一直试图整理一个通过Flickr管理的照片相册系统,过去一天我一直在玩Flickr API,并且有以下代码,但它只是没有返回预期HTML。 insetad我的浏览器中出现上述行的错误($('#images')。html(theHtml);)

  <script type="text/javascript">
     $(document).ready(function(){

   $.getJSON('http://api.flickr.com/services/rest/?&method=flickr.photosets.getPhotos&api_key=xxxxxxxxxxxxxxxxxxxxxxxxxxx&photoset_id=xxxxxxxxxxxxxxxxxxxx=&format=json&jsoncallback=?', displayImages);

   function displayImages(data) {

    var photosetID = "";
    var title = "";
    var theHtml = "";
    $.each(data.photosets.photoset, function(i,set){

     photosetID = set.id;
     title = set.title._content;
     ids.push(photosetID);
     titles.push(title);

     var sourceSquare = (set.media.m).replace("_m.jp g", "_s.jp g");

     theHtml+= '<li><a href="'+set.link+'" target="_blank">';
     theHtml+= '<img title="'+set.title+'" src="'+sourceSquare+'" alt="'+set.title+'" />';
     theHtml+= '</a></li>';
    });

    $('#images').html(theHtml);    });   });

  </script>

我也见过这样的例子:

$.getJSON("http://api.flickr.com/services/feeds/groups_pool.gne?id=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx&lang=en-us&format=json&jsoncallback=?", displayImages);

BUt不确定组ID到底是什么,是否与设置ID相同? Flickr如何知道我在示例二中的身份,因为我没有看到任何API被传递。

我的偏好是让第一个例子正常工作,因为这是我一直在努力的,但任何建议/例子都会得到应用

欢呼声

2 个答案:

答案 0 :(得分:7)

这是因为您尝试使用api Feed,就好像它是rss feed一样。它们是两种不同的格式。看一下photosets.getPhotos

的flickr api浏览器

这段代码可以帮到你:

$.getJSON(url, function(data) {
    $.each(data.photoset.photo, function(i,item){
    var squareUrl = 'http://farm' + item.farm + '.static.flickr.com/' + item.server + '/' + item.id + '_' + item.secret + '_s.jpg';
    var largeUrl = squareUrl.replace('_s.jpg', '_b.jpg');
});

答案 1 :(得分:0)

尝试使用此代码,请在测试完成后更改凭据... Code is here...!