title: Parse stream to object in Nodejs
body: <p>I am trying <strong>Get an object from Amazon S3 storage</strong> in Node.Js.</p>
  
  <p>And this perfectly works <strong>when I am saving it to a file</strong>.</p>
  
  <pre><code>amazon.getObject = function () {
  
      var options = {
          BucketName : 'mybucket',
          ObjectName : 'path/to/my.json',
          ResponseContentType : 'application/json'
      };
  
      s3.GetObject(options, function(err, data) {
          var fs = require('fs');
          var fd = fs.openSync('helloaa.json', 'w+');
          fs.writeSync(fd, data.Body, 0, data.Body.length, 0);
          fs.closeSync(fd);
      });
  
  };
  </code></pre>
  
  <p>In. helloaa.json is:</p>
  
  <pre><code>{
      "hello": 1,
      "world": 3
  }
  </code></pre>
  
  <p>But. I don't want to write data to file on my disk.</p>
  
  <p><strong>I want parse this json to object with JSON.parse();</strong></p>
  
  <p>When I print object there with:</p>
  
  <pre><code>    s3.GetObject(options, function(err, data) {
          console.log(JSON.stringify(data));
      });
  </code></pre>
  
  <p>In console is this:</p>
  
  <pre><code>{"StatusCode":200,"Headers":{"x-amz-id-2":"N1gDLPam+fDCLWd9Q2NI62hizH7eXAjg
  61oLYOkanLoSlqUlDl6tqasbfdQXZ","x-amz-request-id":"C53957DAF635D3FD","date"
  :"Mon, 31 Dec 2012 00:11:48 GMT","last-modified":"Sun, 30 Dec 2012 23:22:57        "etag":"\"8677a54c9b693bb6fc040ede8cc6a\"","accept-ranges":"bytes","co
  ntent-type":"application/json","content-length":"176","server":"AmazonS3"},
  "Body":{"0":123,"1":10,"2":32,"3":32,"4":32,"5":32,"6":34,"7":105,"8":100,"
  9":34,"10":58,"11":32,"12":49,"13":44,"14":10,"15":32,"16":32,"17":32,"18":
  </code></pre>
  
  <p>What is it?</p>
  
  <p>How can I parse it?</p>
  
  <p>Is it stream?</p>
  
  <p>Can I save stream to object in NodeJs?</p>