Partage
  • Partager sur Facebook
  • Partager sur Twitter

NodeJS MySql login impossible ?

Sujet résolu
    8 mars 2022 à 21:49:15

    Bonsoir à tous,

    Je suis en train de développer une API avec nodejs, express et la DB Mysql. J'ai déjà implémenté plusieurs routes qui permettent de créer un user, de le modifier, de le supprimer, etc...

    J'ai tenté d'implémenter la route pour le login mais j'ai une erreur "throw err; // Rethrow non-MySQL errors" qui apparait dans la console quand je tente une requête avec POSTMAN.

    Voici l'erreur :

    Ceci est mon controller :

    exports.authenticateUser = (req, res) => {
    
        const body = req.body;
    
        authentification(body.email, (error, results) => {
    
            if (error) {
                console.log(error);
            }
    
            if (!results) {
                return res.json({
                    success: 0,
                    data: 'Invalid email or password'
                })
            }
    
            const result = compareSync(body.password, results.password);
    
            if (result) {
                results.password = undefined;
                const token = sign({ result: results}, 'secretkey', { expiresIn: '1h' });
                return res.json({
                    success: 1,
                    message: 'Login successfully',
                    token: token
                })
            } else {
                return res.json({
                    success: 0,
                    data: 'Invalid email or password'
                })
            }
    
        })
    }

    Ceci est la fonction appelée dans mon controller :

    exports.authentification = (email, callback) => {
    
       pool.query(`SELECT * FROM utilisateurs WHERE email = ?`,
        [email],
        (error, results, fields) => {
            if (error) {
                return callback(error)
            }
            return callback(null, results[0])
        }
       )
    }

    Je serai ravi d'avoir un peu d'aide afin de comprendre le problème. Merci


    -
    Edité par Moshé Frydmann 8 mars 2022 à 21:52:05

    • Partager sur Facebook
    • Partager sur Twitter
      8 mars 2022 à 22:11:37

      Moshé Frydmann a écrit:

      J'ai tenté d'implémenter la route pour le login mais j'ai une erreur "throw err; // Rethrow non-MySQL errors" qui apparait dans la console quand je tente une requête avec POSTMAN.

      Voici l'erreur :


      Non, l'erreur est «ReferenceError: sign is not defined». La ligne juste en dessous t'indique le fichier, la ligne et le premier caractère du code qui a produit l'erreur.

      • Partager sur Facebook
      • Partager sur Twitter
        8 mars 2022 à 22:24:51

        C'était effectivement bien ça le soucis ! Merci pour ton aide !

        -
        Edité par Moshé Frydmann 9 mars 2022 à 8:33:59

        • Partager sur Facebook
        • Partager sur Twitter

        NodeJS MySql login impossible ?

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown