Obtener con ReadableStream como cuerpo de solicitud

Intento usar fetch con un ReadableStream . En este ejemplo, el ReadableStream debería simplemente repetir “Some data …” indefinidamente.

fetch('/', { method: 'POST', body: new ReadableStream({ pull: function(controller) { console.log('pull called!'); controller.enqueue('Some data...'); } }) }); 

Esto no funciona Mientras pull se ejecuta una vez, no se envían datos en el cuerpo de la solicitud.

 POST / HTTP/1.1 Host: example.com Connection: keep-alive Content-Length: 0 Origin: https://example.com User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36 Accept: */* Referer: https://example.com/ Accept-Encoding: gzip, deflate, br Accept-Language: en-US,en;q=0.8 

¿Cómo puedo hacer que un ReadableStream (o cualquier tipo de flujo donde pueda escribir datos dynamics) pueda usarse con fetch?

Alternativamente, si esto aún no es posible, ¿podría indicarlo? Gracias.

Nota: Esta es una pregunta derivada más específica de: Método para transmitir datos de un navegador a otro a través de HTTP

Estamos trabajando para que esto funcione; consulte https://github.com/whatwg/fetch/pull/425 para conocer el PR del Estándar de obtención. Una vez hecho esto, puede esperar que esto llegue a los navegadores (lentamente).