title: How can I make this call to request in nodejs synchronous?
body: <p>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 <em>want</em> control flow to halt for the few seconds it takes to load the uri. How can I achieve this?</p>
  
  <pre><code>function get_source_at(uri){
      var source;
      request({ uri:uri}, function (error, response, body) {
          console.log(body);
      });
      return source;
  }
  </code></pre>
  
  <p>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?</p>