title: NodeJS: zlib.gunzip( body ) erroneously returns `undefined`
body: <p>I have a barebones node server that parses XML files (referenced from user-defined URLs) and outputs the manipulated data as a CSV file for download.</p>
  
  <p>I'm trying to implement optional GZIP decompression:</p>
  
  <pre><code>function loadURL(req, res) {
      request.get(req.query.url, function(error, response, body) {
          if (req.query.isGzip == 'true') {
              zlib.gunzip(body, function(err, dezipped) {
                  var xmlData = dezipped.toString('utf-8');
                  parseAndOffload(xmlData, req, res);
              });
          } else {
              parseAndOffload(body, req, res);
          }
      });
  }
  </code></pre>
  
  <p>Despite the test URL (<a href="http://flowercard.co.uk/google_product_feed.xml.gz" rel="nofollow">http://flowercard.co.uk/google_product_feed.xml.gz</a>) being a genuine GZip file with 500kb of data, passing the GZIP file body to <code>dezipped.toString('utf-8')</code> returns <code>undefined</code>.</p>
  
  <p>Why?</p>