es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

React Native Android Falla de Consulta HTTP

Tengo problemas con el uso de fetch en el emulador de Android con un servidor local. Puedo ejecutar el siguiente código en node y en otros entornos sin ningún problema, pero en el emulador de Android, obtengo un error. Este es el código que estoy usando:

fetch(“http://127.0.0.1:5050”,{
method: ‘POST’,
headers: {‘Content-Type’: ‘application/json’},
body: data}
).then(()=>{
console.log(“Recibí una respuesta”)
}).catch((error)=>{
console.log(error)
});

El error que obtengo es el siguiente:

Rechazo de promesa posible no manejado (id: 6):
TypeError: La solicitud de red falló
http://10.0.2.2:8081/index.bundle?platform=android&dev=true&minify=false&app=com.reactapp&modulesOnly=false&runModule=true:25395:33
http://10.0.2.2:8081/index.bundle?platform=android&dev=true&minify=false&app=com.reactapp&modulesOnly=false&runModule=true:29610:26
_callTimer@http://10.0.2.2:8081/index.bundle?platform=android&dev=true&minify=false&app=com.reactapp&modulesOnly=false&runModule=true:29530:17
callTimers@http://10.0.2.2:8081/index.bundle?platform=android&dev=true&minify=false&app=com.reactapp&modulesOnly=false&runModule=true:29731:19
__callFunction@http://10.0.2.2:8081/index.bundle?platform=android&dev=true&minify=false&app=com.reactapp&modulesOnly=false&runModule=true:3081:36
http://10.0.2.2:8081/index.bundle?platform=android&dev=true&minify=false&app=com.reactapp&modulesOnly=false&runModule=true:2805:31
__guard@http://10.0.2.2:8081/index.bundle?platform=android&dev=true&minify=false&app=com.reactapp&modulesOnly=false&runModule=true:3032:15
callFunctionReturnFlushedQueue@http://10.0.2.2:8081/index.bundle?platform=android&dev=true&minify=false&app=com.reactapp&modulesOnly=false&runModule=true:2804:21
callFunctionReturnFlushedQueue@[native code]

Otras instrucciones de fetch funcionan como fetch(‘https://jsonplaceholder.typicode.com/todos/1’)… y supongo que esto se debe a que usa https, pero no veo cómo podría hacer eso para un servidor en la misma computadora. El backend está utilizando flask y me gustaría evitar cambiar eso. Cualquier ayuda para solucionar esto sería apreciada.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Parece que tienes un problema al usar fetch con un servidor local en el emulador de Android. Has mencionado que otros comandos de fetch funcionan, como fetch('https://jsonplaceholder.typicode.com/todos/1'), y supones que esto tiene que ver con que usa https. También has dicho que te gustaría evitar cambiar el backend, que está usando Flask.

    Para ayudar a resolver este problema, sería útil conocer más información sobre el error que estás recibiendo. ¿Podrías proporcionar más detalles sobre el error, como el mensaje de error exacto y la línea de código donde se produce el error? Además, sería útil saber más sobre el entorno en el que se está ejecutando el código, como la versión de Android y la versión de Node.js que estás utilizando.

    Una vez que tengamos más información sobre el error y el entorno, podremos trabajar juntos para encontrar una solución a tu problema.

Comments are closed.