2017-08-17 3 views
0

J'ai l'erreur "Impossible d'obtenir une réponse" dans le facteur lorsque j'essaie de tester mon POST de l'utilisateur :/vous inscrire, voici mon code contrôleur utilisateur, quand j'ajouté le bcrypt pour le mot de passe de hachage, ce que j'appelle dans mes user.js (contrôleur):lorsque je fais la fonction "saveUser" avec bcrypt dans le mot de passe postman envoyez-moi "n'a pas pu obtenir de réponse"

var bcrypt = require('bcrypt-nodejs'); 
var User = require('../models/user'); 
var jwt = require('../services/jwt'); 

ce qui est la fonction où je veux pour obtenir le 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'}); 
    } 
} 

et je suis avec l'exportation que:

module.exports = { 
    saveUser 
}; 

je l'ai fait la route dans mes voies de dossier:

var express = require('express'); 
var UserController = require('../controllers/user'); 

var api = express.Router(); 

api.post('/register', UserController.saveUser); 

module.exports = api; 

et mon modèle est:

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); 

donc j'avais tout mais l'application ne fonctionne pas, dans mon terminal Cygwin il m'a mis la réponse comme mais il ne sauve pas parce que la fonction "saveUser" ne fonctionne pas, quelqu'un peut-il m'aider?

Répondre

0

je trouve la solution, supprimer la mangouste dernière version et installé le 4.10.8

dans Cygwin:

npm install [email protected] --save