events.js:85
throw er; // Unhandled 'error' event
^
Error: Parse Error
at Error (native)
at Socket.socketOnData (_http_client.js:317:20)
at Socket.emit (events.js:107:17)
at readableAddChunk (_stream_readable.js:163:16)
at Socket.Readable.push (_stream_readable.js:126:10)
at TCP.onread (net.js:538:20)
此错误的可能原因是什么?我可以在哪里放置 try-catch 或 fun(err) 来进行错误处理!我什至没有得到这个错误的来源,这个错误的可能来源是什么?
最佳答案
当 gulp 作为代理运行时,我得到了一个非常相似的堆栈跟踪。
Error: Parse Error
at Socket.socketOnData (_http_client.js:411:20)
at emitOne (events.js:96:13)
at Socket.emit (events.js:191:7)
at readableAddChunk (_stream_readable.js:178:18)
at Socket.Readable.push (_stream_readable.js:136:10)
at TCP.onread (net.js:563:20)
一段时间后我找到了根本原因。
由于后端错误,后端服务器正在发送重复的 header 。通过删除重复的 HTTP header 修复了 javascript 前端中的此错误。
重复的 http header 示例(例如内容长度):
< HTTP/1.1 200 OK
< server: Cowboy
< date: Thu, 25 Jan 2018 12:47:15 GMT
< content-length: 4789
< content-type: text/html
< content-length: 4789
< date: Thu, 25 Jan 2018 12:47:14 GMT
< server: Cowboy
关于node.js - 我在 nodejs 中收到一个 ParseError 并且有一个非常不正确的错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31646143/