Я использую API-интерфейс flickr для поиска изображений и хочу получать фотографии с их тегами одновременно.
Чтобы сделать это, мне нужно сначала использовать flickr.photos.search метод для извлечения photo_id и построения URL-адреса фотографии (1-й и 2-й методы then). В третьей части «затем» я использовал другой метод API flickr.photos.getInfo , чтобы получить теги для каждой фотографии и, наконец, вернуть urlPhoto и tagsInfo, такие как json.
Проблема в том, что переменная tagsInfo по-прежнему является обещанием, и я не могу отобразить теги (массив) фотографии. Тем не менее, urlPhoto имеет правильное значение.
export function fetchAll(...) {
return fetch(BASE_URL + encodeGetParams(params1), options)
.then(response => {
return response.json();
})
.then((data) => {
return data.photos.photo.map(e =>
({
"photo_id": e.id,
"urlPhoto": 'https://farm'+e.farm+'.staticflickr.com/'+e.server+'/'+e.id+'_'+e.secret+'.jpg',
})
)
})
.then((data) => {
return data.map(e => {
const url = BASE_URL + encodeGetParams({ ...params2, "photo_id": e.photo_id });
const tagsInfo = fetch(url, options)
.then(data => data.json())
.then(data => data.photo.tags.tag.map(e => e._content));
return {
"urlPhoto": e.urlPhoto,
"tagsInfo": tagsInfo
}
}
)
})
}