NodeJS请求:如何获得响应作为一个string?

我有点失落 是否有可能在.on(response) (请参阅下文)中将响应主体作为string.on(response) ? 还是我疯了? 我知道我可以将一个WriteStream响应,但我需要响应正文和响应statusCode在同一个地方,以继续我的代码。 谢谢!

 var request = require("request"); request(url) .on('response', function(response) { console.log(response.statusCode); // 200 console.log(/* I need to get response body string here */); // <--- can I have the response body as a string here? }) .on("error", function(err){ console.log("Problem reaching URL: ", err); }); 

我会发表评论,但我不能。

和npm页面一样(考虑到你不需要pipe道),你可以把body和response一起放在:

 var request = require("request"); request(url, function (error, response, body) { console.log('error:', error); console.log('statusCode:', response && response.statusCode); console.log('body:', body); });