webRequest.StreamFilter.write()
Записывает данные ответа в выходной поток.
Вы можете вызвать эту функцию только после того, как сработает событие onstart.
Синтаксис
filter.write( data // ArrayBuffer or Uint8Array )
Параметры
data-
Uint8ArrayилиArrayBuffer: массив байтов, содержащий данные, передаваемые в рендеринг-движок браузера.
Возвращаемое значение
Ничего.
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | |
write |
Нет | Нет | 57 | ? | Нет | Нет | ? | ? | 57 | ? | Нет | ? |
Примеры
В этом примере используется write(), чтобы заменить "Пример" в первой части ответа на "Пример расширения веб-приложения".
function listener(details) { let filter = browser.webRequest.filterResponseData(details.requestId); let decoder = new TextDecoder("utf-8"); let encoder = new TextEncoder(); filter.ondata = (event) => { let str = decoder.decode(event.data, {stream: true}); // Just change any instance of Example in the HTTP response // to WebExtension Example. str = str.replace(/Example/g, 'WebExtension Example'); filter.write(encoder.encode(str)); filter.disconnect(); } //return {}; // not needed } browser.webRequest.onBeforeRequest.addListener( listener, {urls: ["https://example.com/*"], types: ["main_frame"]}, ["blocking"] );
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/write