https://www.npmjs.com/package/web-streams-polyfill

ибудь знает способ создания новогоотклик изReadableStream в Microsoft Edge?

Для Chrome это довольно просто. Вы можете просто взятьReadableStream и передать его в конструктореResponse в качестве первого аргумента. Таким образом, вы можете, например, создать новыйResponse скажем, другой код состояния из сетевого ответа, без копирования ответа:

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))

Хотя это отлично работает в Chrome, Edge не поддерживаетReadableStream как вход дляResponse конструктор. Единственный способ заставить его работать в Edge - это сначала получить текстовый ответ (эффективно скопировав ответ и заблокировав поток):

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))

Кто-нибудь знает способ создания нового ответа из читаемого потока в Edge?

PS: я использую Microsoft Edge 42.17115.1.0 (последняя версия для разработчиков, так как я тестирую Service Workers)

PPS: первый код не работает и в Firefox, потому что Firefox не поддерживает получениеRedableStream изResponse.body, Edge действительно разоблачаетResponse.body хотя.

Ответы на вопрос(0)

Ваш ответ на вопрос