Fired when a network request has finished and its details are available to the extension.
The request is given as a HAR entry object, which is also given an asynchronous getContent()
method that gets the response body content.
Note that although your extension can add a listener at any time, it will only start firing after the user has activated the browser's network panel at least once.
Syntax
browser.devtools.network.onRequestFinished.addListener(listener)
browser.devtools.network.onRequestFinished.removeListener(listener)
browser.devtools.network.onRequestFinished.hasListener(listener)
Events have three functions:
addListener(listener)
- Adds a listener to this event.
removeListener(listener)
- Stop listening to this event. The
listener
argument is the listener to remove. hasListener(listener)
- Check whether
listener
is registered for this event. Returnstrue
if it is listening,false
otherwise.
addListener syntax
Parameters
callback
-
Function that will be called when this event occurs. The function will be passed the following arguments:
request
object
. An object representing the request. This object is a single HAR entry object. It also defines an asynchronousgetContent()
method, which returns aPromise
that resolves with an array of two elements. The first element is the HTTP response body as a string, while the second element is the MIME type of the HTTP response also as a string.
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
Add a listener that logs the server IP address and response body for every network request.
function handleRequestFinished(request) {
console.log("Server IP: ", request.serverIPAddress);
request.getContent().then(([content, mimeType]) => {
console.log("Content: ", content);
console.log("MIME type: ", mimeType);
});
}
browser.devtools.network.onRequestFinished.addListener(handleRequestFinished);
This API is based on Chromium's chrome.devtools
API.