Here is my code
auth controller:
//CHECK EXISTING USER
const q = "SELECT * FROM user WHERE email = ? OR username = ?";
db.query(q, [req.body.email, req.body.username], (err, data) => {
if (err) return res.status(500).json(err);
if (data.length) return res.status(409).json("User already exists!");
//Hash the password and create a user
const salt = bcrypt.genSaltSync(10);
const hash = bcrypt.hashSync(req.body.password, salt);
const q = "INSERT INTO users(`username`,`email`,`password`) VALUES (?)";
const values = [req.body.username, req.body.email, hash];
db.query(q, [values], function (err, data) {
if (err) return res.status(500).json(err);
return res.status(200).json("User has been created.");
});
});
};```
As you can see, I already define salt, and hash by
```const salt = bcrypt.genSaltSync(10); const hash = bcrypt.hashSync(req.body.password, salt);```
So I have no idea why return Error: data and salt arguments required.