Я пытаюсь получить данные из API github и вернуть данные по маршруту.Однако, когда я пытаюсь отправить данные обратно клиенту, массив проектов пуст.
Я попытался вернуть данные во втором последнем обещании, но он не работает.Требуется ли для этого использование Promises / async / await
router.get('/projects', (req, res) => {
fetchRepos().then(res => {
if (!res.ok) {
res.send({
success: false,
message: 'Server Error'
})
return
}
return res.json()
}).then(repos => {
var projects = []
repos.forEach(element => {
fetch(element.languages_url + '?access_token=' + process.env.PERSONAL_ACCESS_TOKEN).then(res => res.json()).then(langs => {
langs = Object.keys(langs).map(e => e.toLowerCase())
projects.push({
title: element.name,
description: element.description,
link: element.html_url,
technologies: langs,
id: element.pushed_at,
webpage: element.homepage
})
console.log(projects)
})
});
console.log(projects)
res.send({
success:true,
data:projects
})
})
});