Boa noite!
Estou aprendendo usar uma API com axios e jwt em node.
Meu front faz uma conexão com uma api.
meu código JS que faz a requisição do tipo GET para buscar as informações na API está assim.
var axiosConfig={
headers:{
Authorization: "Bearer " + "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwiZW1haWwiOiJlbWFpbEBleGFtcGxlLmNvbSIsImlhdCI6MTYwODE2ODIyNywiZXhwIjoxNjA4MzQxMDI3fQ.a_mXmjJKQBKj1_WChod-1rpWm8mocpUaXZozDapIjIE"
}}
axios.get("http://localhost:8000/games").then(res => {
var games = res.data;
console.log(games)
var list = document.getElementById("games");
games.forEach(game => {
var item = document.createElement("li");
console.log(game)
item.setAttribute("data-id", game.id);
item.setAttribute("data-title", game.title)
item.setAttribute("data-year", game.year)
item.setAttribute("data-price", game.price)
item.innerHTML = game.year + " - " + game.title + " - $ " + game.price;
var deleteButton = document.createElement("button")
deleteButton.innerHTML = "Deletar";
deleteButton.addEventListener("click", function () {
deleteGame(item)
});
var editButton = document.createElement("button")
editButton.innerHTML = "Editar";
editButton.addEventListener("click", function () {
loadForm(item)
})
item.appendChild(deleteButton);
item.appendChild(editButton);
list.appendChild(item);
});
}).catch(error => {
console.log("isso aqui é um teste: " + error);
});
Está caindo no catch pois o erro é esse
“TypeError: games.forEach is not a function”
minha variável que armazena o jogo é um array
var DB = {
games: [
{
id: 1,
title: "God of War",
year: 2012,
price: 50
}, {
id: 2,
title: "Minecraft",
year: 2010,
price: 80
}, {
id: 10,
title: "The Last of US",
year: 2014,
price: 100
},
]
e no console está retornando isso.
{games: Array(3)}
games: Array(3)
0: {id: 1, title: "God of War", year: 2012, price: 50}
1: {id: 2, title: "Minecraft", year: 2010, price: 80}
2: {id: 10, title: "The Last of US", year: 2014, price: 100}
length: 3
Sendo que o console está retornando um array, por que não está aceitando o forEach()? as requisições estão certas, testei previamente no postman.