Il sera important de pouvoir se créer un compte et se connecter.
L'idée est de proposer l'authentification dès que l'utilisateur n'est pas connecté. Il aura le droit soit de se créer un compte ou se connecter.
Cela permettra d'initialiser le client Apollo. Il permettra de faire touts les requêtes GraphQL sur l'API.
L'authentification marche via des tokens JWT. L'API offre un accessToken, qui permet de faire des actions en étant authentifié. Il y a aussi le refreshToken qui permet de créer un autre accessToken. Un accessToken a une durée de vie de quelques minutes (pour des tests il est actuellement à 2h), et le refreshTokens il a une durée de vie de plusieurs semaines/mois.
Donc si l'API renvoie des erreurs 401 comme quoi l'utilisateur n'est pas authentifié, il faudra faire une requête pour rafraîchir les tokens et utiliser donc les nouveaux tokens.
Les tokens doivent stocker sur le AsyncStorage du téléphone.
Description
Il sera important de pouvoir se créer un compte et se connecter. L'idée est de proposer l'authentification dès que l'utilisateur n'est pas connecté. Il aura le droit soit de se créer un compte ou se connecter. Cela permettra d'initialiser le client Apollo. Il permettra de faire touts les requêtes GraphQL sur l'API.
L'authentification marche via des tokens JWT. L'API offre un
accessToken
, qui permet de faire des actions en étant authentifié. Il y a aussi lerefreshToken
qui permet de créer un autreaccessToken
. Un accessToken a une durée de vie de quelques minutes (pour des tests il est actuellement à 2h), et le refreshTokens il a une durée de vie de plusieurs semaines/mois. Donc si l'API renvoie des erreurs 401 comme quoi l'utilisateur n'est pas authentifié, il faudra faire une requête pour rafraîchir les tokens et utiliser donc les nouveaux tokens. Les tokens doivent stocker sur le AsyncStorage du téléphone.Tests nécessaires
No response
Documentation
No response
Priorité
Haute
Autres considérations
Lien figma