webRequest.StreamFilter.write()
Écrit quelques données de réponse dans le flux de sortie..Vous ne pouvez appeler cette fonction qu'après le déclenchement de l'événement onstart
.
Syntaxe
js
filter.write(
data, // ArrayBuffer or Uint8Array
);
Paramètres
data
-
Uint8Array
ouArrayBuffer
: tableau d'octets contenant les données à transmettre au moteur de rendu du navigateur.
Valeur retournée
None.
Compatibilité des navigateurs
BCD tables only load in the browser
Exemples
Cet exemple utilise write()
pour remplacer "Example" dans la réponse par "WebExtension Example".
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.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"],
);