Ves al contingut
Tornar al blog

Connectar React Native a una API HTTPS en producció

Desplega el backend de l’app, substitueix localhost per una URL HTTPS pública i gestiona autenticació, respostes HTTP i errors de xarxa.

  • API React Native
  • backend mòbil
  • Android
  • iOS
  • HTTPS

Una app React Native pot cridar una API amb fetch, però el servidor de desenvolupament no viatja amb el binari que instal·les des de Google Play o l’App Store. Desplega el backend en una URL pública i configura el build de release perquè la faci servir.

Fes servir un endpoint HTTPS accessible

Una URL com http://localhost:3000/api apunta al dispositiu que fa la petició. En un mòbil, apunta al mòbil, no a l’ordinador que executa Metro. Configura una URL de producció com https://api.exemple.cat/v1 i comprova el DNS, TLS i la ruta de l’API des de fora de la xarxa de desenvolupament. Deixa les adreces de l’emulador i de la xarxa local només a la configuració de desenvolupament.

React Native documenta fetch i les diferències entre plataformes per al trànsit sense xifrar. Fes servir HTTPS a producció i no afegeixis excepcions HTTP generals per esquivar errors de certificat. Consulta la guia de xarxa de React Native.

Tracta els codis HTTP i les respostes inesperades

Comprova response.ok abans de considerar correcta una resposta. Separa els errors de xarxa dels errors HTTP i valida les dades rebudes: un tipus TypeScript ajuda l’editor, però no valida el JSON durant l’execució. Defineix cancel·lació o timeout i reintents limitats quan correspongui. Prova sessions caducades, errors del servidor, respostes mal formades i ús sense connexió en un build de release per a Android i iOS.

No incloguis credencials al paquet mòbil

Un valor inclòs al build es pot extreure, encara que vingui d’una variable d’entorn. Inclou-hi configuració pública com l’URL de l’API, mai contrasenyes de base de dades, tokens d’administració o credencials privades. L’API ha d’autenticar cada petició i autoritzar l’acció; amagar un botó no limita l’accés. Valida les dades i no escriguis tokens als logs. La guia REST de seguretat d’OWASP descriu controls del servidor.

Les peticions natives de React Native no segueixen CORS del navegador. Una versió web sí, i pot requerir una resposta OPTIONS. Limita els orígens permesos a les webs que gestiones en lloc d’obrir-los tots.

On executar el backend

Projects pot encaixar amb un servei Node.js o contenidor admès i desplegat des de Git; comprova el runtime i els recursos del pla. Un VPS et dona control dels paquets del sistema, Docker Compose i els processos, però n’has d’administrar les actualitzacions, la seguretat i les còpies. El paquet de l’app mòbil no arrenca l’API per si sol. Consulta la guia de backend per a apps mòbils i les condicions vigents del producte.

Abans de publicar, busca localhost, 127.0.0.1 i IP privades a la configuració de producció. Comprova l’endpoint HTTPS públic, els codis d’èxit i error esperats i que el paquet no contingui credencials privades. Compara una API pròpia amb Firebase i revisa la llista de Flutter per a producció si l’app també utilitza Flutter.

Gestiona els teus webs, servidors i correu.

És gratis i triga un minut.

Mínim 8 caràcters. Ni només números ni una contrasenya comuna.

T’enviarem un correu per confirmar el compte.