我在nodejs中得到了一个ParseError,并带有一个非常不正确的错误消息

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)来处理错误! 我甚至没有得到这个错误的来源,什么可能是这个错误的可能来源?

看起来你没有听错误。 尝试如下:

 http.get(url, function(res) { res.on('error', function(err) { // here you can handle errors on the response }); }).on('error', function('err') { // here you can handle errors on the request }); 

这样你可以捕捉到错误,并试图了解发生了什么。 没有人可以说为什么你收到一个parsing错误,直到现在提供的数据。

没有任何代码,我只能猜测到具体的原因,但它看起来像你试图做一个HTTP请求到一个服务器返回一个无效的HTTP响应。

要捕获这些错误,请在客户端上使用error事件处理程序(假设您使用的是http模块):

 var http = require('http'); http.get(URL, function(response) { ... }).on('error', function(err) { console.error(err); // or however you want to deal with it });