今天用nodejs的http做json解析的时候遇到了错误。
现象:短的响应报文可以正常解析json,长的报文就不行。
最后wireshark抓包发现没问题,但是响应里面多了Transfer-Encoding:chunked
后来再仔细搜了一下。应该是我把http请求给用错了。
我是这样:
request.on('response', function (response) {
response.on('data', function (chunk) {
console.log('BODY: ' + chunk);
});
});
request.end();
正确完整的是这样:
request.on('response', function (response) {
var body = '';
response.on('data', function (chunk) {
body += chunk;
});
response.on('end', function () {
console.log('BODY: ' + body);
});
});
request.end();