Update
The accepted answer was good for last year but today I would use the package everyone else uses: https://github.com/mikeal/request
I suggest you use http-request, so that even redirects are managed.
var http = require('http-request');
var options = {url: 'http://localhost/foo.pdf'};
http.get(options, '/path/to/foo.pdf', function (error, result) {
if (error) {
console.error(error);
} else {
console.log('File downloaded at: ' + result.file);
}
});