Directus - SwiftUI - Cours de Johan ?! Résolu :)

Salut Bob,

Je travaille sur le (très bon) cours de Johan Guenaoui : Créer une app connectée avec SwiftUI

J’implémente méticuleusement l’application et tout va bien pour les chapitres 1 à 4, aussi bien côté Directus que côté SwiftUI (Petite info, j’ai eu des @MainActor à ajouter, un peu au pif, en tête des ViewModels suite à des warnings de couleur Violette), mais çà marche.

Me voilà rendu maintenant au Chapitre 5 - Ajouter l’authentification.

Je fais tout comme il faut, mais Swift plante, avec une encyclopédie de commentaires de debug en console, que je ne sais pas et surtout renonce à décrypter.

Avant d’incriminer davantage le côté Swift, je reviens sur le non moins excellent cours Directus de @mbritto : Authentification avec Directus,, je mets en branle Paw et lance correctement (j’espère) la requête, laquelle plante aussi avec un beau message :

POST /auth/login HTTP/1.1
Content-Type: application/json; charset=utf-8
Host: xxx.xxx.xxx.247:8055
Connection: close
User-Agent: Paw/3.4.0 (Macintosh; OS X/12.6.0) GCDHTTPRequest
Content-Length: 43
{« email »:"jmz@j******.fr",« password »:"***********"}

The operation couldn’t be completed. (kCFStreamErrorDomainSSL error -9847).

Je précise que je n’ai aucun problème de connexion avec la page login de Directus, qui fonctionne parfaitement.

Mais jusqu’où s’arrêteront-ils ? Je vous le demande :slight_smile:

Bien sûr, je cherche, sans trop savoir quoi d’ailleurs, sur le Web, et j’en suis là!
Si quelqu’un pouvait m’orienter, voire me dépanner, j’apprécierais volontiers.

Un grand merci d’avance :smiley:

Auto réponse :

En lançant la requête en HTTP et non HTTPS, ça marche et je reçois bien un token avec Paw.

Quelles conclusions théoriques et pratiques en tirer, je ne sais pas encore?!, mais je cherche et reste à l’écoute :thinking:

Pour utiliser HTTPS il te faut un certificat valide et une configuration serveur adaptée. Sur un véritable serveur ça se fait assez facilement avec LetsEncrypt et Certbot comme je l’ai montré dans le cours sur Directus.
Mais comme tu travailles en local sur ton ordi, je suppose que tu n’as pas configuré de serveur NGinx et se certificat SSL. C’est pour ça qu’en local tu dois utiliser HTTP pour que ça fonctionne et non HTTPS

Merci Maxime pour ta réponse.
En fait je travaille sur un vrai server externalisé chez HOSTINGER, doté d’un certificat SSL mais pas de serveur NGinx.
Ce qui me préoccupe, c’est que la moitié de l’application SwiftUI fonctionnait (Conversation et Messages) et ce n’est qu’au moment de l’introduction de l’authentification que ce problème est apparu?!
Je vais creuser davantage en suivant tes conseils.
Un grand merci :slight_smile:

Du SSL sur le port 8055 ça me paraît étrange. Je ne connais pas Hostinger mais peut être ont-ils plusieurs points d’entrée mais un seul contient du SSL

whaou … En plein milieu d’un épisode de Mythic Quest
(il faut bien que je m’y mette pour rester dans le coup chez PG, mais maintenant je sais qui sont Poppy, Ian et les autres, je suis devenu accros),
tu m’as mis le doute, et j’ai peur, avec raison.
En effet je suis allé chez HOSTINGER, et en fait j’ai des hébergements WordPress tous dotés de certificats (offerts), d’où mon nom de domaine en https://jmz4905.fr, et à côté de ça, j’ai un autre serveur VPS sans certificat apparement. Je vais donc devoir éclaircir et mieux configurer tout ça.
Toutefois, pourquoi ça a partiellement marché? Je vais revenir sur des versions antérieures de l’app Directus_Chat et vérifier le fonctionnement si j’était bien en https.
Pour l’heure je simule bien l’app. avec Paw, mais je rame côté SwiftUI, alors je vérifie et revérifie, mais ça fait travailler, et j’aime bien.
A+ Maxime.

1 « J'aime »

Salut Bob,

Après bien des déboires de toutes natures, liées, non pas aux cours en eux-mêmes, mais aux différences de contextes, hébergeurs, configurations des OS, incompétences de ma part sur plein de strates technologiques mises en jeu, etc, etc, finalement, avec l’aide de cette communauté, et notamment de @mbritto lors du dernier coaching de groupe, mon but est totalement atteint, le projet est fonctionnel et maîtrisé → J’ai progressé

happy-35164_640

Je note que le concept de formation Purple Giraffe a fonctionné une fois de plus,
une chance pour nous tous.

J’invite tous ceux qui souhaiteraient se lancer dans l’aventure de ce projet Créer une app connectée avec SwiftUI, mais qui hésiteraient à le faire, je me mets bien volontiers à disposition, en coworking, pour éventuellement, partager cette expérience.

Merci Maxime, merci @Cityhunter (j’ai retrouvé enfin où tu te cachais parmi les @ …).

Bien à vous.