我想在flickr Feed中获得+20张照片。在另一个论坛上,有人发布了以下代码作为答案。我在第2-3行插入了我的API + setID,但它没有用。
$(document).ready(function() {
var apiKey = ‘******I inserted my API here’;
var photoSetID = ‘********set ID’;
var jsonURL = 'http://api.flickr.com/services/rest/?method=flickr.photosets.getPhotos&extras=url_o&photoset_id=' + photoSetID +
'&per_page=500&api_key=' + apiKey + '&format=json&jsoncallback;=?';
$.getJSON(jsonURL, function(data){
$.each(data.photoset.photo, function(i,item){
var imgSrc = ‘http://farm’ + item.farm + ‘.static.flickr.com/’ + item.server + ‘/’ +
item.id + ‘_’ + item.secret + ‘_b.jpg’;
$(’ <img >’).attr(’src’, imgSrc).appendTo(’#images’);
});
});
});
我认为我的两个主要问题是 - 在这里我用自己的信息替换信息:
var jsonURL = 'http://api.flickr.com/services/rest/?method=flickr.photosets.getPhotos&extras=url_o&photoset_id=' + photoSetID + '&per_page=500&api_key=' + apiKey + '&format=json&jsoncallback;=?';
这段代码的目的是什么?
var imgSrc = 'http://farm' + item.farm + '.static.flickr.com/' + item.server + '/' + item.id + '_' + item.secret + '_b.jpg';
非常感谢,我对Jquery的理解是有限的,关于flickr api的文档对初学者来说是非常稀缺的。
凯尔
答案 0 :(得分:0)
转到你或flickr上的photostream页面,然后向下滚动到页面底部,其中显示订阅用户的照片流。单击橙色RSS提要图标,然后您将找到照片流的提要。在顶部地址会有一个看起来像49269824 @ N04的ID,将其放在下面的代码中,并在您的网页正文中添加一个id为flickr的div。
<html>
<head>
<title>Flick Test</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(function(){
var id='49269824@N04';
// Flickr Photostream feed link.
$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?id=" + id + "&lang=en-us&format=json&jsoncallback=?",
function(data){$.each(data.items,
function(i,item){
// Number of thumbnails to show.
if(i < 20){
// Create images and append to div id flickr and wrap link around the image.
$("<img/>").attr("src", item.media.m.replace('_m', '_s')).appendTo("#flickr").wrap("<a href='" + item.media.m.replace('_m', '_z') + "' name='"+ item.link + "' title='" + item.title +"'></a>");
}
});
});
});
</script>
</head>
<body>
<div id="flickr"></div>
</body>
</html>
您可以通过更改上面的if(i&lt; 20){....中的数字来设置您想要的图像数量限制。
祝你好运。