Comment changer le port `frontend_domain` dans `GRAPHQL_AUTH` dans le courrier de vérification ?
Je travaille sur une pile Docker-Django-Graphene-React où Django est le backend qui reçoit les requêtes GraphQL via Graphene de React qui agit comme le frontend. Tout fonctionne dans des conteneurs Docker. Django sur le port 8000 et React sur le 3000.
Je travaille actuellement sur l'authentification avec le django-graqhql-auth
package python.
Lorsqu'un utilisateur s'enregistre sur le formulaire frontend, la register
mutation se fait correctement vers le backend et le compte est créé.
Un e-mail est envoyé en même temps à l'adresse e-mail enregistrée de l'utilisateur contenant un lien de vérification avec un jeton qui doit être utilisé avec la veryifyToken
mutation afin de marquer le compte comme vérifié.
Voici un exemple de lien:http://localhost:8000/activate/eyJ1c2VybmFtZSI6IkpvaG5zb2ZuZiIsImFjdGlvbiI6ImFjdGl2YXRpb24ifQ:1mQr0R:Wh25LJ6A1PRVCQT730kXXIk4i2QJgz1a4aNDe7RoZM0
Le problème est que le port sur le lien est 8000, ce qui redirige vers le backend (Django). Je voudrais rediriger l'utilisateur sur le port 3000 qui est le frontend (React).
Selon la documentation, je devrais pouvoir changer ce frontend_domain
que j'ai fait. J'ai également changé les path
valeurs et protocol
pour voir si cela fonctionne:
Here is what I put in my backend's settings.py
file:
GRAPHQL_AUTH = {
"EMAIL_TEMPLATE_VARIABLES": {
"protocol": "https",
"frontend_domain": "localhost:3000",
"path": "verify",
}
}
Et je termine avec ce lien:
https://localhost:8000/verify/eyJ1c2VybmFtZSI6IkpvaG5zZmdvZmdzbmRmIiwiYWN0aW9uIjoiYWN0aXZhdGlvbiJ9:1mQrIr:2o818drqPP8oVTE4E6fg2F6vMu2zITOjkF96z5K1whY
Les variables protocol
et ont été correctement modifiées mais pas les. Le problème est que je ne peux pas rediriger l'utilisateur directement vers le frontend.path
frontend_domain
Y'a t'il un moyen d'arranger cela? Ou dois-je créer une route sur le backend qui redirigera l'utilisateur vers le frontend avec le jeton afin que je puisse utiliser la verifyToken
mutation ?
Solution du problème
il vous suffit de mettre à jour la dernière version.
pip install --upgrade django-graphql-auth
Commentaires
Enregistrer un commentaire