How to pass extra variable to a Https Get Request



  • Hello everyone,

    I’m pretty new to NodeJS, but I’m working on a module for the Home automation JEEDOM.
    I’m stuck at being able to do a simple GET and having the context during async GET response in order to know from where my request came from

    var req = https.get("https://JEEDOMURL/core/api/jeeApi.php?apikey=...&type=cmd&id=127");
    req.idx = "127";
    req.on("response", function(res){
    	res.on('data', (d) => {		
    	console.log("DEBUG : " + req.idx +" / "+ typeof (d));
    	console.log("DEBUG : " + req.idx +" / "+ d);
    	})
    });
    
    var req = https.get("https://JEEDOMURL/core/api/jeeApi.php?apikey=...&type=cmd&id=695");
    req.idx = "695";
    req.on("response", function(res){
    	res.on('data', (d) => {		
    	console.log("DEBUG : " + req.idx +" / "+ typeof (d));
    	console.log("DEBUG : " + req.idx +" / "+ d);
    	})
    });
    

    With no surprise I’m getting
    DEBUG : 695 / object
    DEBUG : 695 / 5515
    DEBUG : 695 / object
    DEBUG : 695 / 19.8

    instead of getting
    DEBUG : 695 / object
    DEBUG : 127 / 5515
    DEBUG : 695 / object
    DEBUG : 695 / 19.8

    I know that is expected by JS async guru, but How can I explicitly pass a variable and getting my http get DATA synchronize.

    I’ve read a lot of module code, and unfortunately for me JEEDOM is not giving me any context information in the GET answer
    https://JEEDOMURL/core/api/jeeApi.php?apikey=…&type=cmd&id=127" is only responding 5515
    and https://JEEDOMURL/core/api/jeeApi.php?apikey=…&type=cmd&id=695" is responding 19.8

    Any help would be appreciate ?

    Thanks in advance for your time.
    I’m really stuck, and I don’t want to parse the URL to get back my ID.


Log in to reply
 

Looks like your connection to MagicMirror Forum was lost, please wait while we try to reconnect.