Node.js HTTP request not returning full response

get, http, node.js, request

Solution

you should also listen for the 'end' event

req.on('response', function (response) {

    var data = "";

    response.on('data', function (chunk) {
        console.log(chunk);
        data += chunk;
    });

    response.on('end', function(){
        callback(data);
    })

});

Problem

I'm making a HTTP request using Node's `http` module, but on `data`, the chunk returned doesn't seem to content the full request response. Here's my code: ``` var req = http.request(httpOptions, function(res) { res.setEncoding('utf8'); }); req.on('response', function (response) { response.on('data', function (chunk) { console.log(chunk); callback(null, JSON.parse(chunk)); }); }); req.on('error', function(e) { callback(e); //callback(e.message); }); req.end(); ``` Is there a way to wait for the full output before ending the request? Am I doing something wrong? Thanks!

Original source

Related problems