Member 12419363 Ответов: 0

Не может зарегистрировать пользователя осуществляется в PostgreSQL


I am using nodejs + postgreSQL to do the registration of my app, so i have this basic model:

<pre lang="Javascript">"use strict";
var sequelize = require('./index');
var bcrypt = require('bcryptjs');

module.exports = function (sequelize, DataTypes) {
  var User = sequelize.define("User", {
    username: DataTypes.STRING,
    email: DataTypes.STRING,
    password: DataTypes.STRING
  }, {
    instanceMethods: {
        generateHash: function(password) {
            return bcrypt.hashSync(password, bcrypt.genSaltSync(8), null);
        },
        validPassword: function(password) {
            return bcrypt.compareSync(password, this.password);
        },
    }
});

  return User;
};

это работало раньше, когда у меня не было пароля, теперь я хочу хэшировать этот пароль и соль, поэтому в моем маршруте регистрации у меня есть это:

var express = require('express');
var User = require('../../models').User;
var router = express.Router();

/* GET users listing. */
router.post('/', function (req, res, next) {

  if (JSON.stringify(req.body) == "{}") {
    return res.status(400).json({ Error: "Register request body is empty" });
  }
  if (!req.body.email || !req.body.username || !req.body.password) {
    return res.status(400).json({ Error: "Missing fields for registration" });
  }

  var password = User.generateHash(req.body.password);

  User.create({
    username: req.body.username,
    email: req.body.email,
    password: password
  }).then(function () {
    return res.status(200).json({message: "user created"});
  })

});

module.exports = router;

теперь я просто не получаю никакого ответа от моего почтальона, и строка не экономит на базе данных никакого сахара?

Что я уже пробовал:

I tried everything searched a lot about the problem,

0 Ответов