Node.js でJSON データを受信してパースしようとしたら Unexpected end of json input
のエラーが表示されました。
最初以下のように書いていたのですが、
response.on('data', (data) => {
let json = JSON.parse(data);
...
});
データが大きい場合は分割されて送信されてくるようなので、以下のように処理すれば上手くいきました。
let chunks = [];
response.on('data', (data) => {
chunks.push(data);
});
response.on('end', () => {
let data = Buffer.concat(chunks);
let json = JSON.parse(data);
...
});