0
私は私のPOSTをテストしようとすると "エラー" :私はパスワードのbcryptで "saveUser"機能を実行するときに郵便受けは "私は"応答を得ることができませんでした
var bcrypt = require('bcrypt-nodejs');
var User = require('../models/user');
var jwt = require('../services/jwt');
、これは私が欲しい機能です:/これは私はハッシュパスワードのbcryptのを追加したときに、これは私が私のuser.jsの(コントローラ)に呼んで、私のユーザー・コントローラーのコードで、登録POST
function saveUser(req, res){
var user = new User();
var params = req.body;
console.log(params);
user.name = params.name;
user.surname = params.surname;
user.email = params.email;
user.role = 'ROLE_USER';
user.image = 'null';
if(params.password){
// Encriptar contraseña
bcrypt.hash(params.password, null, null, function(err, hash){
user.password = hash;
if(user.name != null && user.surname != null && user.email != null){
// Guarda el usuario
user.save((err, userStored) => {
if(err){
res.status(500).send({message: 'Error al guardar el usuario'});
}else{
if(!userStored){
res.status(404).send({message: 'Noseha registrado el usuario'});
}else{
res.status(200).send({user: userStored});
}
}
});
}else{
res.status(200).send({message: 'Rellena todos los campos'});
}
});
}else{
res.status(200).send({message: 'Introduce la contraseña'});
}
}
を取得すると、私は輸出していたものと:
module.exports = {
saveUser
};
私は私のフォルダのルートでルート行っている:
var express = require('express');
var UserController = require('../controllers/user');
var api = express.Router();
api.post('/register', UserController.saveUser);
module.exports = api;
を、私のモデルは次のとおりです。
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var UserSchema = Schema({
name: String,
surname: String,
email: String,
password: String,
role: String,
image: String
});
module.exports = mongoose.model('User', UserSchema);
ので、私は私のcygwinのターミナルでは、アプリが実行されませんが、すべてのものを持っていましたそれは私のような応答を入れたが、関数 "saveUser"が機能しないため、誰も私を助けることができないので、保存しないでください?