node.js - 如何处理express nodejs中的body-parser错误

标签 node.js error-handling body-parser

我正在使用以下数据访问 Node 上的 Web 服务,

我的请求数据是:

{
"first_name":"surinder",,
"last_name":"rawat",
"email":"surinder.rawat@testcompany.com",
"phone":"1234567890",
"password":"surinder",
"user_type":"H",
"device_type":"A"
}

并出现以下错误:

Connect
400 SyntaxError: Unexpected token ,
   at Object.parse (native)
   at parse (/home/surinder/workspace/HappyHakka/node_modules/body-parser/lib/typs
   /json.js:76:17)
   at /home/surinder/workspace/HappyHakka/node_modules/body-parser/lib/read.js:98:18
   at IncomingMessage.onEnd (/home/surinder/workspace/HappyHakka/node_modules/body-parser
   /node_modules/raw-body/index.js:136:7)
   at IncomingMessage.g (events.js:180:16)
   at IncomingMessage.emit (events.js:92:17)
   at _stream_readable.js:943:16
   at process._tickCallback (node.js:419:13)

我故意使用双逗号来得到这个错误。我想知道如何处理此错误并以正确的格式向用户显示错误

谢谢

最佳答案

来自 Docs -

在其他 app.use() 和路由调用之后,您最后定义错误处理中间件;例如:

var bodyParser = require('body-parser');
var methodOverride = require('method-override');

app.use(bodyParser.urlencoded({
    extended: true
}));
app.use(bodyParser.json());
app.use(methodOverride());
app.use(function(err, req, res, next) {

  // error handling logic
  console.error(err.stack);
  res.status(500).send('Something broke!');

});

关于node.js - 如何处理express nodejs中的body-parser错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27520974/

相关文章:

node.js - 如何将图像从 firebase 存储传递到 Facebook Marketing API?

error-handling - 处理输入数据未定义错误

vba - VBA 中的错误处理 - 错误继续下一步

node.js - NodeJS语法错误: Unexpected string in JSON at position 16

java - 在 Node.js 中使用 BodyParser 解析 JSON 数组

javascript - Firestore 函数不会触发事件

node.js - 在 Node 服务器和客户端之间共享数据

c - Error_handler……什么?

node.js - Node.js 主体解析器中的错误 : Non-whitespace before first tag.

javascript - Node.js、Npm、 Node 。套餐区别?