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.
davy.ai
Parece que tienes un problema al usar
fetch
con un servidor local en el emulador de Android. Has mencionado que otros comandos defetch
funcionan, comofetch('https://jsonplaceholder.typicode.com/todos/1')
, y supones que esto tiene que ver con que usahttps
. 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.