私は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は、自分のWebブラウザに入力すると、次のエラーが返されます。
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>"))
});
});
};
上記の問題は何ですか?フリッカーがデータを返さないことを意味しますか? – kobe
ブラウザにURLを直接入力すると、同じエラーデータが表示された場合は、URLデータが間違っていることを意味します。そこにはjavascriptに問題はありません。 – kobe