Olá, Antônio.
Tudo bem?
Pelo que você descreveu, parece que você está tendo um problema com a promessa sendo rejeitada quando tenta converter a resposta para JSON. Isso geralmente acontece quando a resposta que você está tentando converter não é um JSON válido.
Aqui está uma sugestão de como você pode lidar com isso:
const api = fetch('http://localhost:3000/')
.then(res => {
if(res.ok) {
return res.json();
} else {
throw new Error('Erro na resposta da API');
}
})
.then(data => console.log(data))
.catch(error => console.error('Erro:', error));
Nesse código, primeiro verificamos se a resposta da API está ok com res.ok
. Se estiver tudo certo, convertemos a resposta para JSON com res.json()
. Caso contrário, lançamos um erro.
Depois disso, usamos outro .then()
para lidar com os dados JSON. E, finalmente, usamos .catch()
para lidar com qualquer erro que possa ocorrer durante o processo.
Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.