I have a function in my nodejs application called get_source_at. It takes a uri as an argument and its purpose is to return the source code from that uri. My problem is that I don’t know how to make the function synchronously call request, rather than giving it that callback function. I want control flow to halt for the few seconds it takes to load the uri. How can I achieve this?
function get_source_at(uri){
var source;
request({ uri:uri}, function (error, response, body) {
console.log(body);
});
return source;
}
Also, I’ve read about ‘events’ and how node is ‘evented’ and I should respect that in writing my code. I’m happy to do that, but I have to have a way to make sure I have the source code from a uri before continuing the control flow of my application – so if that’s not by making the function synchronous, how can it be done?
You should avoid synchronous requests. If you want something like synchronous control flow, you can use async.
The
processis promised to be run afterget_source_atreturns.