i have such code, , want assign 1 variable in function, code example:
meteor.methods({ parsing:function(){ var aa ; request("https://google.com/", function(error, response, body) { if (!error && response.statuscode == 200) { var k=1; aa = k; } }); console.log(aa); } }); it's loged undefined, can explain me why ?
edit :
meteor.methods({ parsing:function(){ var aa ; var tmp; request("https://google.com/", function(error, response, body) { if (!error && response.statuscode == 200) { var k=1; aa = k; console.log(aa); request("https://google.com/xyz", function(error, response, body) { tmp = response.request.uri.href; }); } console.log(tmp); }); } }); for example need console.log(tmp); when second request call (ended)
the function give parameter of request executed when request have answer google. next part of code (your console.log line) still executed without waiting anything.
if want wait request result before log, add function:
parsing:function(){ var aa ; request("https://google.com/", function(error, response, body) { if (!error && response.statuscode == 200) { var k=1; aa = k; console.log(aa); } }); } edit :
well, can use same technique many times want:
parsing:function(){ var aa ; var tmp; request("https://google.com/", function(error, response, body) { if (!error && response.statuscode == 200) { var k=1; aa = k; console.log(aa); // waited first answer. request("https://google.com/xyz", function(error, response, body) { tmp = response.request.uri.href; console.log(tmp); // waited second one. }); } }); }
Comments
Post a Comment