小编Him*_*edi的帖子

Express Js 没有在 res.json() 上发送错误对象

getUser: function(req, res){
    Model.getUser({}, function(error, models){
         if(error){
              let response = {
                  code: 'ERR0001',
                  msg: 'Facing issues while ....',
                  err: error
              }
              res.json(response);
          } else {
              res.json(models)
          }
     }
};
Run Code Online (Sandbox Code Playgroud)

上面的代码适用于所有积极的场景。但是对于错误情况,我没有收到完整的错误消息,而是显示“错误:{}”。

我已经用 Express 应用程序对象注册了 JSON 解析器。如果错误是我在 POSTMAN 控制台中得到的响应

{
  code: 'ERR0001',
  msg: 'Facing issues while ....',
  err: {}
}
Run Code Online (Sandbox Code Playgroud)

根据我的要求,它应该显示如下内容:

{
  code: 'ERR0001',
  msg: 'Facing issues while ....',
  err: 'ERROR: whatever exception occurred on database operation...' 
}
Run Code Online (Sandbox Code Playgroud)

请帮助我了解此问题的原因。

mongodb node.js express

7
推荐指数
1
解决办法
2504
查看次数

删除不适用于NodeJs中的javascript对象

我有一个事件对象,它是通过Mongoose插件从MongoDB中获取的.在这个对象中完成了一些操作,最后我想将这个对象保存在另一个具有相同结构的集合中.

为此,我需要删除所有属性从"_"或"__"开始,如"_id"和"__v".我编写的代码如下:

console.log(event);
console.log(delete event._id);
console.log(event);
Run Code Online (Sandbox Code Playgroud)

第1行和第3行使用_id属性打印相同的值.如果我删除一些其他属性,如"代码",同样的工作正常.这是完整的事件对象:

{ _id: 5a51019b211d740a174a1fba,
  __t: 'EventModel',
  code: '02',
  event: 'testMe',
  source: 'user',
  target: 'cronjob',
  __v: 0,
  params: 
     [ { key: 'Nodics',
         value: 'Framework',
         _id: 5a51019b211d740a174a1fbb } ],
  log: [ 'Published Successfully' ],
  hits: 1,
  type: 'ASYNC',
  state: 'FINISHED',
  testProperty: 'Nodics Framework',
  updatedDate: 2018-01-13T17:04:15.288Z,
  creationDate: 2018-01-13T17:04:15.288Z 
}
Run Code Online (Sandbox Code Playgroud)

请帮助我了解根本原因以及我如何处理这个问题.对我来说,它看起来直接或继承属性问题.但需要专家评论.

javascript mongoose mongodb node.js

3
推荐指数
1
解决办法
1652
查看次数

标签 统计

mongodb ×2

node.js ×2

express ×1

javascript ×1

mongoose ×1