nodejs中的空错误对象mongoose应用程序

时间:2014-12-17 14:05:45

标签: javascript node.js mongoose

我正在使用mongoose及其CRUD操作编写一个简单的RESTful API。

它"工作",当我向服务器发送一个post请求(现在唯一的请求类型)时,它返回一个错误500(,因为它应该是)但错误对象为空,服务器记录器返回OK状态:

POST /omi/v1/clientes 200 17.586 ms - 25 // server: all is cool!


{
    "status": 500,
    "error": {}
} // response: nope, nothing is cool, baby, but i don't tell you why, or what.

我之前从未见过这种行为(我承认,我是 )但是阅读我的代码我找不到问题......这里是:

clientes.js

"use strict";

// instancias de modelos
var Cliente = require('../models/models').Cliente;
// var reqHelper = require('./util');

var clientes = {

  crear: function (req, res) {

    var nuevoCliente = {
      _id: req.body._id,
      nombre: req.body.nombre,
      direccion: req.body.direccion,
      telefono: req.body.telefono
    };

    Cliente.create(nuevoCliente, function (err, cliente) {
      if (err) return res.json({status: 500, error: err});
      res.json({ status: 200, cliente: cliente });
    }); // fin Cliente.create
  }, // fin crearCliente

  actualizar: function(req, res) {
    var ci = req.body._id;

    var clienteData = {};
    // reqHelper(req.body, clienteData);

    Cliente.update({ _id: ci }, clienteData, function(err, cliente) {
      if (err) return res.json({status: 500, error: err});
      res.json({ status: 200, cliente: cliente });
    }); // fin Cliente.update
  }, //fin actualizarCliente

  borrar: function(req, res) {
    Cliente.remove({ _id: req.body._id }, function(err) {
      if (err) return res.json({status: 500, error: err});
      res.json({ status: 200, msg: 'Cliente borrado' });
    });
  }, // fin borrarCliente
}; // fin actions

module.exports = clientes;

index.js

"use strict";

var express = require('express'),
    router  = express.Router();

var clientes = require('./clientes');
var items    = require('./items');

router.route('/clientes')
  .post(clientes.crear)
  .put(clientes.actualizar)
  .delete(clientes.borrar);

router.route('./items')
  .post(items.crear)
  .put(items.actualizar)
  .delete(items.borrar);

module.exports = router;

这就是它......感谢任何帮助/想法

0 个答案:

没有答案