Convertion d'une application flutter Android en flutter Web

Bonjour à tous,
J’ai une application flutter qui marche bien sur Android dont j’aimerais avoir aussi la version Web. J’ai essayé pas mal de recettes déjà, mais le résultat est toujours le même: la page d’accueil web s’ouvre sans contenu. Partout où je fouille c’est toujours les mêmes consignes. Je suis finalement venu à la conclusion qu’il y a une petite touche qui m’échappe. Quelqu’un a-t-il un peu d’expérience pour me dépanner ?

Il y a pleins de causes possibles, mais le plus courant est lié aux erreurs CORS :

  • sur du mobile on peut appeler des API facilement et nos apps marchent bien.
  • sur le web il y a des restrictions pour les appels de site à site (CORS)

L’idée de base est que le site que tu appelles (ton webservice) doit explicitement autoriser le sites web Flutter (son domaine) à utiliser ses ressources.
Sans cette autorisation, l’appel est bloqué par le navigateur.

C’est une des erreurs courantes dans Flutter pour le web par rapport à Flutter mobile. Mais peut être que ton problème vient d’ailleurs

1 « J'aime »

Merci beaucoup. Néamnoins je n’ai toujours pas encore résolu le problème. Pour l’instant, je n’ai pas encore attribué un domaine à mon webservice. Je l’appelle à l’aide de http://localhost/

Hello,

Difficile de te répondre comme ça, beaucoup de possibilités.

Pour commencer, as tu activé le web sur ton projet ?

flutter create --platforms web ou flutter config --enable-web si la première commande renvoie une erreur.

Ensuite la commande flutter run web fonctionne elle ?
Sinon un petit flutter doctor pour vérifier que tu ai bien chrome ou un navigateur compatible avec (web).

Si la encore tu a toujours une page blanche, il faut que tu vérifies que ton dossier web a la racine de ton projet existe bien et que le fichier index.html contienne bien les bonnes balises.

Par expérience je n’ai pas eu de soucis de lancement en mode débug (tout du moins pas de ce genre la).
L’application WEB flutter ou WebAssembly ne fonctionne pas sans serveur web (ouvrir le index.html) ne fonctionne pas.

J’ai déjà rencontré des problème de CORS pas plus tard que lundi, c’est une plaie a corriger. En effet ça peut dans certains cas empêcher l’application de se lancer, cependant normalement ça fige sur le logo flutter. Donc il y a quand même un truc qui se lance.
Au cas où tu peux essayer de lancer en mode dégradé pour debugger uniquement >

Voici quelques liens pour t’aider dans tes recherches