MySQL et express js : enregistrement d'utilisateurs
Bonjour,
J'apprends mysql et express js , hier je parvenais à envoyé des utilisateurs dans ma base de données depuis postman, sachant que j'avais un message d'erreur. Aujourd'hui j'ai un message d'erreur de type 500 que j'ai créé en dernière ligne avec également ce message qui apparaît en console (events.js:292 throw er; // Unhandled 'error' event ), mais cette fois-ci impossible d'envoyer l utilisateur dans la base de donnée. Je voudrais empêcher l'inscription si l'adresse email et l'username se trouve déjà dans la base de données. Pouvez-vous me dire svp qu'elles sont les erreurs sur mon code ?
Je vous remercie par avance pour vos réponses.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| const db = require('../sql');
const bcrypt = require('bcrypt');
const jwt = require('jsonwebtoken');
const cryptojs= require('crypto-js');
const userSchema = require('../models/User');
const app = require('../app');
//const User = require('../models/User');
require('dotenv').config();
exports.signUp = (req, res) => {
bcrypt.hash(req.body.password, 10)
.then( hash => {
const conn = db.connect()
const email = cryptojs.HmacSHA256(req.body.email,process.env.ADRESS).toString();
const username = req.body.username
const password = hash
// let user = ({
// email: crypto,
// password: hash
// })
userDb = db.query(`INSERT INTO users(username, email,password) VALUES ('${username}','${email}','${password}'`)
db.connect(userDb,(error, result) => {
if(req.body.email === db.email){
return res.status(401).json({message:'l utilisateur est déjà inscrit' })
}else{
console.log('utilisateur ok')
res.status(201).json()
}
})
//conn.end()
res.status(201).json({message:'utilisateur créé'})
})
.catch(error => res.status(500).json ({error:'erreur serveur'}));
} |