Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

TypeError: Network request failed

Estou utilizando a versão "0.61.5" do react native, fiz todas as tentativas possíveis, porém o mesmo warning abaixo é retornado no Android:

Possible Unhandled Promise Rejection (id: 0):
TypeError: Network request failed
onerror@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:26705:31
dispatchEvent@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:32259:31
setReadyState@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:31343:33
__didCompleteResponse@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:31170:29
emit@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:3318:42
__callFunction@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:2650:49
http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:2363:31
__guard@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:2604:15
callFunctionReturnFlushedQueue@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:2362:21
callFunctionReturnFlushedQueue@[native code]
3 respostas

Oi, tudo bom? Vc pode colocar o pedaço de código que está gerando esse erro?

As vezes é realmente um detalhe muito pequeno que não percebemos, pode até ser uma palavra escrito errado sem querer

Olá Ricardo,

Segue o código:

import React, {Fragment, useState, useEffect} from 'react';
import {FlatList} from 'react-native';
import {Cabecalho} from './src/Components/Cabecalho';
import {Foto} from './src/Components/Foto';

const App: () => React$Node = () => {
  const [fotos, setFotos] = useState([]);

  useEffect(() => {
    const lerFotos = async () => {
      const fotosHTTP = await fetch('http://10.0.2.2:3030/feed');
      const fotosJson = await fotosHTTP.json();
      setFotos(fotosJson);
    };
    lerFotos();
  }, []);

  return (
    <FlatList
      data={fotos}
      keyExtractor={item => item.id.toString()}
      renderItem={({item}) => (
        <Fragment>
          <Cabecalho nomeUsuario={item.userName} />
          <Foto />
        </Fragment>
      )}
    />
  );
};

export default App;
solução!

Encontrei a solução para o problema, utilizei o Inspetor do Chrome para resolver esse problema do localhost.

Deixei detalhes nesse post:

https://cursos.alura.com.br/forum/topico-estou-com-dificuldade-de-pegar-os-dados-da-api-104691

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software