1
resposta

TypeError: Network request failed

boa noite, alguem pode tira uma duvida, estou desenvolvendo um app com react native, quando eu uso minha maquina para roda meu backend em java com spring não funciona nenhuma chamada a api usando fetch() no app react, dando erro de network sempre em todas as api usando http, e quando eu coloco o backend para roda em outra maquina, o app roda normal, tem alguma coisa relacionada a erro de cors?

1 resposta

Olá, Elivandro! Tudo bem?

Pelo que você descreveu, parece que você está enfrentando um problema comum ao desenvolver aplicativos com React Native e servidores backend locais. Quando você tenta fazer uma chamada de rede para "localhost" ou "127.0.0.1" a partir de seu aplicativo React Native, a chamada é feita a partir do emulador/simulador e não do seu computador real. Portanto, "localhost" ou "127.0.0.1" se refere ao emulador/simulador e não ao seu computador.

Para resolver isso, em vez de usar "localhost" ou "127.0.0.1", você deve usar o endereço IP da sua máquina na rede local. Por exemplo, em vez de usar "http://localhost:8080/api", você deve usar algo como "http://192.168.1.2:8080/api", onde "192.168.1.2" é o endereço IP da sua máquina na rede local.

Quanto ao problema de CORS (Cross-Origin Resource Sharing), ele geralmente ocorre quando você tenta fazer uma solicitação de um domínio, protocolo ou porta que é diferente do seu. No seu caso, se você está rodando o servidor e o cliente no mesmo domínio (sua máquina local), então CORS não deveria ser um problema. No entanto, se você ainda enfrentar problemas de CORS, você pode precisar configurar seu servidor para permitir solicitações de diferentes origens.

Espero ter entendido e conseguido ajudar. Qualquer coisa manda aqui de novo. Bons estudos!