javascript - Nueva respuesta de Stream en Microsoft Edge
response microsoft-edge (1)
Prueba esto:
https://www.npmjs.com/package/web-streams-polyfill
var streams = require("web-streams-polyfill");
var readable = new streams.ReadableStream;
// Or, in ES6
import { ReadableStream } from "web-streams-polyfill";
¿Alguien sabe de una manera de crear una nueva Response de un ReadableStream en Microsoft Edge?
Para Chrome, esto es bastante simple. Simplemente puede tomar un ReadableStream
y pasarlo en el constructor de Response
como primer argumento. De esta manera puede, por ejemplo, crear una nueva Response
con decir otro código de estado a partir de una respuesta de la red, sin copiar la respuesta:
fetch(''https://www.baqend.com/'')
.then(res => new Response(res.body, { status: 222 }))
.then(it => it.text())
.then(it => console.log(''Text prefix '' + it.substr(0,16)))
.catch(it => console.log(''error: '' + it))
Si bien esto funciona perfectamente en Chrome, Edge no admite ReadableStream
como entrada para el constructor de Response
. La única manera de hacer que funcione en Edge es cuando primero obtengo la respuesta de texto (copiando efectivamente la respuesta y bloqueando la secuencia):
fetch(''https://www.baqend.com/'')
.then(it => it.text())
.then(text => new Response(text, { status: 222 }))
.then(it => it.text())
.then(it => console.log(''Text prefix '' + it.substr(0,16)))
.catch(it => console.log(''error: '' + it))
¿Alguien sabe una manera de crear una nueva respuesta de un flujo legible en Edge?
PS: Estoy usando Microsoft Edge 42.17115.1.0 (última vista previa del desarrollador, ya que estoy probando Service Workers)
PPS: el primer código no funciona en Firefox porque Firefox no admite la obtención de un RedableStream
de Response.body
. Edge expone Response.body
sin embargo.