【发布时间】:2021-06-20 15:49:09
【问题描述】:
所以我之前问过一个类似的问题,但没有得到回应。经过一个小时的麻烦,我提出了另一种方法。但我又面临同样的问题。我成功获取了所有专辑名称和所有照片。但问题是所有专辑名称都同时显示,然后是所有照片。我想显示像专辑名称和相应的照片,然后是另一个专辑。我不知道我做错了什么。请帮忙。
<html>
<body height="400" width="345">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
var settings = {
"async": true,
"crossDomain": true,
"url": "https://www.flickr.com/services/rest/?method=flickr.photosets.getList&api_key=d4484e060a112d188a27a51ea64f427e&user_id=193275648%40N03&format=json&nojsoncallback=1",
"method": "GET", }
$.ajax(settings).done(function (data) {
console.log(data);
// $("#galleryTitle").append(data.photos.photo[0].title + " Gallery");
$.each( data.photosets.photoset, function( i, gp ) {
$("#albumname").append(data.photosets.photoset[i].title._content + " Gallery");
var id = gp.id;
var settings1 = {
"async": true,
"crossDomain": true,
"url": "https://www.flickr.com/services/rest/?method=flickr.photosets.getPhotos&api_key=d4484e060a112d188a27a51ea64f427e&photoset_id="+ id +"&user_id=193275648%40N03&format=json&nojsoncallback=1",
"method": "GET", }
$.ajax(settings1).done(function (data) {
console.log(data);
$.each( data.photoset.photo, function( i, gpr ) {
var farmId = gpr.farm;
var serverId = gpr.server;
var id = gpr.id;
var secret = gpr.secret;
console.log(farmId + ", " + serverId + ", " + id + ", " + secret);
// https://farm{farm-id}.staticflickr.com/{server-id}/{id}_{secret}.jpg
$("#flickr").append('<center><img style="border:1px solid #000000" src="https://farm' + farmId + '.staticflickr.com/' + serverId + '/' + id + '_' + secret + '.jpg"/><br><br></center>');
});
});
});
});
</script>
<!-- <h2><div id="galleryTitle"></div></h2> -->
<h2><div id="albumname"></div></h2>
<div id="flickr"/>
</body>
</html>
<style>
img{
width: auto;
height: 80%;
max-width: 100%;
overflow: hidden;
border-width: 1px;
border-color: Black;
padding: 5px;
}
</style>
第一次 API 调用的 JSON 响应
{"photosets":{"page":1,"pages":1,"perpage":500,"total":1,"photoset":[{"id":"72157719443542617","owner" :"193275648@N03","username":"kasindimahesh","primary":"51258562023","secret":"dba1214e96","server":"65535","farm":66,"count_views":" 0","count_cmets":"0","count_photos":2,"count_videos":0,"title":{"_content":"fff"},"description":{"_content":""}, "can_comment":0,"date_create":"1624162691","date_update":"1624172423","photos":2,"videos":0,"visibility_can_see_set":1,"needs_interstitial":0}]}," stat":"ok"}
第二次 API 调用的 JSON 响应
{"photoset":{"id":"72157719443542617","primary":"51258562023","owner":"193275648@N03","ownername":"kasindimahesh","photo":[{" id":"51258562023","secret":"dba1214e96","server":"65535","farm":66,"title":"WhatsApp Image 2021-06-07 at 17.15.56","isprimary" :"1","ispublic":1,"isfriend":0,"isfamily":0},{"id":"51259309294","secret":"c2f246caf7","server":"65535"," farm":66,"title":"WhatsApp Image 2021-06-05 at 16.34.10","isprimary":"0","ispublic":1,"isfriend":0,"isfamily":0}] ,"page":1,"per_page":500,"perpage":500,"pages":1,"title":"fff","total":2},"stat":"ok"}
【问题讨论】: