devtools.network.onRequestFinished
Wird ausgelöst, wenn eine Netzwerk-Anfrage abgeschlossen ist und ihre Details der Erweiterung zur Verfügung stehen.
Die Anfrage wird als HAR-Eintragsobjekt übergeben, dem auch eine asynchrone getContent()
-Methode hinzugefügt ist, die den Inhalt des Antwortkörpers abruft.
Beachten Sie, dass Ihre Erweiterung jederzeit einen Listener hinzufügen kann, dieser jedoch erst ausgelöst wird, nachdem der Benutzer das Netzwerkpanel des Browsers mindestens einmal aktiviert hat.
Syntax
browser.devtools.network.onRequestFinished.addListener(listener)
browser.devtools.network.onRequestFinished.removeListener(listener)
browser.devtools.network.onRequestFinished.hasListener(listener)
Ereignisse haben drei Funktionen:
addListener(listener)
-
Fügt diesem Ereignis einen Listener hinzu.
removeListener(listener)
-
Hört auf, diesem Ereignis zuzuhören. Das Argument
listener
ist der zu entfernende Listener. hasListener(listener)
-
Überprüfen Sie, ob
listener
für dieses Ereignis registriert ist. Gibttrue
zurück, wenn es zuhört, andernfallsfalse
.
addListener-Syntax
>Parameter
listener
-
Die Funktion, die aufgerufen wird, wenn dieses Ereignis eintritt. Der Funktion wird dieses Argument übergeben:
request
-
object
. Ein Objekt, das die Anfrage darstellt. Dieses Objekt ist ein einzelnes HAR-Eintragsobjekt. Es definiert auch eine asynchronegetContent()
-Methode, die einPromise
zurückgibt, das mit einem Array von zwei Elementen aufgelöst wird. Das erste Element ist der HTTP-Antwortkörper als Zeichenfolge, während das zweite Element der MIME-Typ der HTTP-Antwort ebenfalls als Zeichenfolge ist.
Beispiele
Fügen Sie einen Listener hinzu, der die Server-IP-Adresse und den Antwortkörper für jede Netzwerk-Anfrage protokolliert.
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);
Browser-Kompatibilität
Loading…
Hinweis:
Diese API basiert auf Chromiums chrome.devtools
API.