NodeJS Body Parser throw:意外_

时间:2016-06-06 19:05:22

标签: javascript json node.js body-parser

最近我的NodeJS API抛出了一个非常奇怪的错误:

SyntaxError: Unexpected token _
    at parse (/var/www/html/node/node_modules/body-parser/lib/types/json.js:83:15)
    at /var/www/html/node/node_modules/body-parser/lib/read.js:116:18
    at invokeCallback (/var/www/html/node/node_modules/raw-body/index.js:262:16)
    at done (/var/www/html/node/node_modules/raw-body/index.js:251:7)
    at IncomingMessage.onEnd (/var/www/html/node/node_modules/raw-body/index.js:308:7)
    at IncomingMessage.EventEmitter.emit (events.js:92:17)
    at _stream_readable.js:920:16
    at process._tickCallback (node.js:415:13)

由于这并没有指向我在node_modules之外的任何文件,我对于可能导致此错误的原因感到非常困惑。我有像creation_timestamp和_id这样的值,但我从来没有遇到过处理这些问题的麻烦。

如果有人有解决方案甚至某种方法可以获得更多信息,我会非常感激,我会以此为由结束。

编辑:这是我带来的字符串化JSON:

{"meeting_id":"5755d81869996f6e4cea47ea","type":"delete_entry"}

1 个答案:

答案 0 :(得分:0)

原来这是由于KendoUI Scheduler及其传输端点的工作方式。在通过Scheduler构造函数发送请求之前,需要显式字符串化。在Scheduler.dataSource.transport中我添加了:

parameterMap: function (data, op) {
    return JSON.stringify(data);
}

现在可行。