2010-12-08 4 views
11

Flickr에서 지정된 세트를 가져 와서 JSON 및 REST API를 사용하여 해당 세트의 이미지를 표시하려고합니다. 다음은 사용중인 코드입니다.Jquery JSON Flickr API

$.getJSON("http://api.flickr.com/services/rest/?method=flickr.photosets.getPhotos&api_key=xxx&set=72157623858739780&format=json&jsoncallback=?", function(data){ 
    $.each(data.items, function(i,item){ 
    $("<img/>").attr("src", item.media.m).appendTo("#images"); 
    }); 
}); 

예에서 api 키를 제거했습니다. 거기에 내 키 URL은 내 웹 브라우저에 입력하면, 다음과 같은 오류를 반환

jsonFlickrApi({"stat":"fail", "code":1, "message":"Photoset not found"}) 

나는 http://www.flickr.com/photos/[email protected]/sets/72157623858739780/로 이동하는 것은 잘 작동으로 설정 한 ID가 정확 알고있다.

UPDATE

나는 일하는 것을 얻을 수 있었다. 다른 사람들이 알아 내려고 시도하는 경우를 대비하여 여기에 제 수정 된 코드가 있습니다.

function FlickrPhotoSet(){ 



    //SET API CALL BASED ON INPUT 
    var apiCall = "http://api.flickr.com/services/rest/?format=json&method=flickr.photosets.getPhotos&photoset_id=THESET&per_page=10&page=1&api_key=XXX&jsoncallback=?"; 

    //PRINT API CALL (DEBUG)  
    $("<span>").html(apiCall+"<br>").appendTo("body"); 

    //SEND API CALL AND RETURN RESULTS TO A FUNCTION  
    $.getJSON(apiCall, function(data){ 

     //LOOP THROUGH DATA 
     $.each(data.photoset.photo, function(i,photo){ 

     //LINK TO IMAGE SOURCE 
     var img_src = "http://farm" + photo.farm + ".static.flickr.com/" + photo.server + "/" + photo.id + "_" + photo.secret + "_" + "s.jpg"; 

     //LINK TO IMAGE PAGE (REQUIRED BY FLICKR TOS) 
     var a_href = "http://www.flickr.com/photos/" + data.photoset.owner + "/" + photo.id + "/"; 

     //PLACE IMAGE IN IMAGE TAG AND APPEND TO IMAGES DIV 
     $("<img/>").attr("src", img_src).appendTo("#image_block") 

     //WRAP IN LINK 
     .wrap(("<a href='" + a_href + "'></a>")) 
     }); 

    }); 


}; 
+0

위의 문제는 무엇입니까 ?? 깜박임이 데이터를 반환하지 않는다는 것을 의미합니까 ?? – kobe

+1

브라우저에 직접 URL을 입력하십시오. 동일한 오류 데이터가 표시되면 URL 데이터가 잘못되었음을 의미합니다. 자바 스크립트에는 문제가 없습니다. – kobe

답변

2

From the flickr API docsphotoset_id해야 당신의 URL에 set 매개 변수 것 같습니다.

+0

감사합니다! 나는 순수한 자바 스크립트 루트를 가기로 결정하고 작동하도록했습니다. –