title: Reproducing fs.createReadStream with a buffer
body: <p>I need to send a pdf to an api with formData.
  I download the pdf which when logged look like this: <code>&lt;Buffer  6d 61 67 65 49 2f ... &gt;</code>
  If I <code>fs.writeFileSync</code> it is perfectly readable.
  But I want to try to pass it to the api without having to write it with <code>fs</code>, to manipulate the pdf as a buffer.
  My post look like this:</p>
  
  <pre><code>const formData = new FormData();
  formData.append('access_key', this.config.redacted);
  formData.append('redacted','redacted');
  formData.append('file', fs.createReadStream('./filename.pdf'));
  return post('urlRedacted', formData, {
      headers: formData.getHeaders(),
  })
  </code></pre>
  
  <p>This request will succeed and but it requires me to write the file with <code>fs</code>, which I want to avoid.
  I tried a few things like using the library <code>node-streamifier</code> to help me create readable stream from a buffer, but the api send me back an error: <code>{ error: 'Invalid parameter \'file\' or \'bucket\': Object expected' }</code>.</p>
  
  <p>So my question is, how to reproduce <code>fs.createReadStream</code> behaviour, which seems to be the only one working for my use case?</p>
  
  <p>note: I tried to implement  <a href="https://stackoverflow.com/a/18190310/6480755">this solution</a> like this: <code>formData.append('file', createReadStream(myBuffer))</code> and like this <code>formData.append('file', createReadStream(myBuffer,{ encoding: 'binary' }))</code> but did not changed anything to the error.</p>
  
  <p>SOLUTION:</p>
  
  <p>fs was streaming the data and was intelligently adding some info from the file that it was reading and thus provided this line at the start of the stream of data:</p>
  
  <pre><code>_streams:
  [ '----------------------------622545709057705753853273\r\nContent-
  Disposition: form-data; name="file"; filename="tickets.pdf"\r\nContent-Type: application/pdf\r\n\r\n',
  </code></pre>
  
  <p>This data were required to be a valid upload, so I added them to the my formData like this: 
  <code>formData.append("file", buffer, {contentType: "application/pdf", filename: "tickets.pdf"})</code></p>
  
  <p>It seems to have something to do with <code>Blob</code>, which I know nothing about! But this solution work perfectly!</p>