webRequest.StreamFilter.write()
Schreibt einige Antwortdaten in den Ausgabestrom.
Sie können diese Funktion nur aufrufen, nachdem das onstart
-Ereignis ausgelöst wurde.
Syntax
js
filter.write(
data // ArrayBuffer or Uint8Array
)
Parameter
data
-
Uint8Array
oderArrayBuffer
: Array von Bytes, das die Daten enthält, die an die Rendering-Engine des Browsers übergeben werden sollen.
Rückgabewert
Keiner.
Browser-Kompatibilität
BCD tables only load in the browser
Beispiele
Dieses Beispiel verwendet write()
, um "Example" im ersten Abschnitt der Antwort durch "WebExtension Example" zu ersetzen.
js
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.replaceAll("Example", "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"],
);