我正在尝试使用json2csv库将我的API JSON数据转换为CSV并下载文件。下面是我获取数据的代码,但我一直没有定义require。我在浏览器中使用html和JS文件进行此操作。不知道还可以如何进行此操作,也不知道如何让最后一部分越过终点线。
`
let json2csv = require("json2csv");
async function fetchDogApiResult (apiPath) {
const response = await fetch(`https://dog.ceo/api/${apiPath}`);
if (!response.ok) throw new Error(`Response not OK (${response.status})`);
const data = await response.json();
if (data.status !== 'success') throw new Error('Response not successful');
return data.message;
}
async function fetchBreeds () {
return fetchDogApiResult('breeds/list/all');
}
async function fetchSubBreeds (breed) {
return fetchDogApiResult(`breed/${breed}/list`);
}
async function fetchImages (breed, subBreed) {
return fetchDogApiResult(`breed/${breed}${subBreed ? `/${subBreed}` : ''}/images`);
}
async function fetchDogInfo () {
const breeds = await fetchBreeds();
return Promise.all(Object.entries(breeds).map(async ([breed, subBreeds]) => ({
breed,
subBreeds,
images: (await fetchImages(breed)).map(url => ({url})),
})));
}
(async () => {
const dogInfo = await fetchDogInfo();
let dogInfoJSON = JSON.stringify(dogInfo);
console.log(dogInfoJSON);
})();
`
我已经尝试了许多不同的方法来做到这一点,但大多数的解决方案利用同步功能。我不确定是否我的方式拉API数据是阻止我转换为CSV或如果我只是迷失在下一步,以获得这到CSV文件和下载。我觉得我错过了一些简单的。感谢任何帮助
1条答案
按热度按时间3mpgtkmj1#
请尝试在html文件的头中包含json2csv的脚本标记。