devtools.network.onRequestFinished

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. Returns true 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 asynchronous getContent() method, which returns a Promise that resolves with the response body.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxOperaFirefox for Android
Basic supportChrome Full support YesEdge No support NoFirefox Full support 61
Full support 61
No support 60 — 61
Notes
Notes This event will only start firing after the user has activated the browser's network panel at least once.
Opera Full support YesFirefox Android No support No

Legend

Full support  
Full support
No support  
No support
See implementation notes.
See implementation notes.

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 => {
    console.log("Content: ", content);
  });
}

browser.devtools.network.onRequestFinished.addListener(handleRequestFinished);

Acknowledgements

This API is based on Chromium's chrome.devtools API.

Document Tags and Contributors

Contributors to this page: wbamberg
Last updated by: wbamberg,