我正在使用Pexels,Flickr,Data和Unsplash API构建图像搜索应用程序,我想显示所有搜索的结果。但是,每个API的每个搜索结果都会返回具有不同键的不同JSON文件。如何将它们组合/格式化为单个JSON文件,以便在我的页面上显示所有搜索结果?
Unsplash.js代码例如:
function search(searchTerm) {
const url = `${API_URL}&query=${searchTerm}`;
loadingImage.style.display = '';
imageSection.innerHTML = '';
return fetch(url)
.then(response => response.json())
.then(result => {
return result.results;
});
}
function displayImages(images) {
images.forEach(image => {
const imageElement = document.createElement('img');
imageElement.src = image.urls.regular;
imageSection.appendChild(imageElement);
});
loadingImage.style.display = 'none';
}
Flickr.js例如:
function search(searchTerm) {
const url = `${API_URL}&tags=${searchTerm}&per_page=500&license=7,8,9&format=json&nojsoncallback=1`;
loadingImage.style.display = '';
imageSection.innerHTML = '';
return fetch(url)
.then(response => response.json())
.then(result => {
return (result.photos.photo);
});
}
function displayImages(images) {
images.forEach(photo => {
const imageElement = document.createElement('img');
imageElement.src = "http://farm" + photo.farm + ".static.flickr.com/" + photo.server + "/" + photo.id + "_" + photo.secret + "_" + "z.jpg";
imageSection.appendChild(imageElement);
});
loadingImage.style.display = 'none';
}
发布于 2018-09-29 14:56:00
可以在对象的属性中转换每个JSON并操作这个对象,例子:
var json = {Pexels{jsonpexels}, Flickr{jsonflickr}, Pixaba{jsonpixaba}, Unsplash{jsonunsplash}};
var images = JSON.parse(json);
images.Pexels.'atribute...';
images.Flickr.'atribute...';
images.Pixaba.'atribute...';
images.Unsplash.'atribute...';
https://stackoverflow.com/questions/-100002809
复制相似问题