Skip to content

Instantly share code, notes, and snippets.

@Eternal-tears
Last active December 30, 2019 11:28
Show Gist options
  • Save Eternal-tears/ed784a04db63b8271044 to your computer and use it in GitHub Desktop.
Save Eternal-tears/ed784a04db63b8271044 to your computer and use it in GitHub Desktop.
Flickr APIの自分のアカウントのsetidを使った写真を表示する方法
$(function(){
$.ajax({
type : 'GET',
url : 'https://api.flickr.com/services/rest/',
data : {
method : 'flickr.photosets.getPhotos', // (Required)This method does not require authentication.
api_key : 'xxxxxxxxxxxxxxxxxxxxxxx', // (Required)Your API application key. See here for more details.
photoset_id : 'xxxxxxxxxxxxxxxxxxxxxxx', // (Required)The id of the photoset to return the photos for.
extras : 'url_sq', // A comma-delimited list of extra information to fetch for each returned record. Currently supported fields are: license, date_upload, date_taken, owner_name, icon_server, original_format, last_update, geo, tags, machine_tags, o_dims, views, media, path_alias, url_sq, url_t, url_s, url_m, url_o
//per_page : '10', // (Optional)Number of photos to return per page. If this argument is omitted, it defaults to 500. The maximum allowed value is 500.
//page : '1', // (Optional)The page of results to return. If this argument is omitted, it defaults to 1.
media : 'photos', // (Optional)Filter results by media type. Possible values are all (default), photos or videos
format : 'json', // (Optional)
nojsoncallback : '1',
//auth_token : 'xxxxxxxxxxxxxxxxxxxxxxx',
//api_sig : 'xxxxxxxxxxxxxxxxxxxxxxx',
},
success : _getFlickrPhotosets // 通信が成功した場合の処理
});
});
//▼画像サイズ設定
//_q.jpgの部分を変えると画像サイズを変更できます。
// url_sq(75px正方形) => s
// url_t(100px縦auto) => t
// url_q(150px正方形) => q
// url_m(500px縦auto) => m
// url_n(320px縦auto) => n
// url_z(640px縦auto) => z
// url_c(800px縦auto) => c
// url_l(1024px縦auto) => l
// url_o(full) => o
function _getFlickrPhotosets(data){
var len = data.photoset.photo;
if(data.photoset.ownername == 'Eternal-tears'){ //https://www.flickr.com/services/api/explore/flickr.photosets.getPhotosでownernameを入力
// success
$('#flickr-photos').append('<ul class="small-block-grid-5"></ul>');
var setlist = 10;
for (i=0; i<setlist; i++){
n = Math.floor( Math.random() * (len.length + 1) );
//alert(JSON.stringify(len[n]));
var itemFarm = len[n].farm;
var itemServer = len[n].server;
var itemID = len[n].id;
var itemSecret = len[n].secret;
var itemTitle = len[n].title;
var itemLink = 'http://www.flickr.com/photos/eternal-tears/' + itemID + '/'; //Flickr’s MyPage
var itemPath = 'http://farm' + itemFarm + '.static.flickr.com/' + itemServer + '/' + itemID + '_' + itemSecret + '_q.jpg';//▲上記の画像サイズ設定を参照
var flickrSrc = '<img src="' + itemPath + '" alt="' + itemTitle + '">';
var htmlSrc = '<li><a href="' + itemLink + '" target="_blank">' + flickrSrc + '</a></li>';
$('#flickr-photos ul').append(htmlSrc);
len.splice(n,1);
};
}else{
// fail
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment