Comment gérer un flux de travail de mot de passe oublié et réinitialisé en utilisant React et Node.js

Cameroun Actuel
2 Min Read

Les systèmes d’authentification jouent un rôle crucial dans la fourniture d’une expérience utilisateur transparente et sécurisée. Un flux de travail d’authentification implique généralement deux processus : l’inscription et la connexion.

Avec l’augmentation du nombre de services en ligne, les utilisateurs créent des comptes et chaque compte nécessite des identifiants de connexion uniques. Cependant, il est facile d’oublier ou de confondre les identifiants de connexion. Pour y remédier, votre application doit mettre en œuvre une fonction de réinitialisation du mot de passe qui permet à l’utilisateur de réinitialiser son mot de passe de manière pratique et sécurisée.

Configurer le projet React

Vous pouvez mettre en œuvre un flux de travail de réinitialisation de mot de passe de différentes manières – il n’y a pas de norme universelle que chaque application devrait suivre. Au contraire, vous devez adapter l’approche que vous choisissez aux besoins spécifiques de votre application.

Le flux de travail que vous découvrirez ici comprend les étapes suivantes :

Flux de travail de réinitialisation du mot de passe

Pour commencer, démarrez rapidement un projet React. Ensuite, installez Axios, une bibliothèque de requêtes HTTP JavaScript.

 npm install axios 

Vous pouvez trouver le code du projet dans ce dépôt GitHub.

Créer un composant de connexion

Dans le répertoire src, créez un nouveau composant composants/Login.js et ajoutez le code suivant. Commencez par définir le processus de réinitialisation du mot de passe :

 import axios from "axios";
import React, { useState } from "react";
import { useContext } from "react";
import { RecoveryContext } from "../App";
import "./global.component.css";

export default function Login() {
  const { setPage, setOTP, setEmail } = useContext(RecoveryContext);
  const [userEmail, setUserEmail] = useState("");

  function sendOtp() {
    if (userEmail) {
      axios.get(`http://localhost:5000/check_email?email=${userEmail}`).then((response) => {
        if (response.status === 200) {
          const OTP = Math.floor(Math.random() * 9000 + 1000);
          console.log(OTP);
          setOTP(OTP);
          setEmail(userEmail);

          axios.post("http://localhost:5000/send_email", {
            OTP,
            recipient_email: userEmail,
          })
          .then(() => setPage("otp"))
          .catch(console.log);
        } else {
          alert("User with this email does not exist!");
          console.log(response.data.message);
        }}).catch(console.log);
    } else {
      alert("Please enter your email");
    }}

Ce code crée une fonction qui envoie un mot de passe à usage unique…

Lire la suite de l’article sur encause.fr

Share This Article
Suivez les dernières nouvelles de dernière minute et les développements du Cameroun et du monde entier avec Cameroun Actuel. De la politique à l'économie et à l'environnement, des problèmes locaux aux événements nationaux et aux affaires mondiales, nous avons ce qu'il vous faut.
Aucun commentaire

Laisser un commentaire

Activer les Notifications OK Non Merci