An event handler that will be called when the stream is opened and is about to begin delivering data. From this point on, the extension may use filter functions like write()
, disconnect()
, or close()
.
Browser compatibility
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Examples
This example will replace the page content with "replacement text":
function listener(details) {
let filter = browser.webRequest.filterResponseData(details.requestId);
filter.onstart = event => {
console.log("started");
let encoder = new TextEncoder();
filter.write(encoder.encode("replacement content"));
filter.close();
}
}
browser.webRequest.onBeforeRequest.addListener(
listener,
{urls: ["https://example.org/"], types: ["main_frame"]},
["blocking"]
);