1
resposta

[Dúvida] [[PromiseState]]: "rejected"

Bom dia.

Até a parte em que o código está...

const api = fetch ('http://localhost:3000/') // fetch = buscar; 
.then (res => console.log (res))

... os retornos estão iguais. A partir do momento em que incluo o .json ()...

const api = fetch ('http://localhost:3000/') // fetch = buscar; 
.then (res => console.log (res.json ()))

... aparece [[PromiseState]]: "rejected" no console. Alguém poderia me ajudar?

1 resposta

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.