I'm fumbling my way through node.js with massive help from people on here and I'm struggling getting the body of a GET request into a variable.
Here's the code so far:
var speechOutput;
var myCallback = function(data) {
  console.log('got data: '+data);
  speechOutput = data;
};
var usingItNow = function(callback) {
  var http = require('http');    
  var url = 'http://services.groupkt.com/country/get/iso2code/IN';
    var req = http.get(url, (res) => {
        var body = "";
        res.on("data", (chunk) => {
            body += chunk;
        });
        res.on("end", () => {
            var result = JSON.parse(body);
            callback(result);
        });
    }).on('error', function(e){
      console.log("Got an error: ", e);
    });
};
usingItNow(myCallback);
I'm using examples from other posts to try and get the body of the GET request into the speechOutput variable but it is coming out as undefined.
Ultimately I want the RestResponse.result.name in speechOutput, but I thought I would take this one step at a time. Can anyone offer any pointers?
Further to this, I have tried the following, which still came back undefined - maybe there is a bigger issue with the code? It doesn't even seem to be getting to the parse.
res.on("end", () => {
           // var result = JSON.parse(body);        
            callback('result');
        });
putting the line callback('result'); before the line var req = http.get(url, (res) => { returns 'result' but anything else is either undefined or causes an error.
 
    