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.