Beschreibung
Mit der chrome.devtools.network API können Sie die Informationen zu Netzwerkanfragen abrufen, die von den Entwicklertools im Netzwerkbereich angezeigt werden.
Manifest
Die folgenden Schlüssel müssen im Manifest deklariert werden, um diese API zu verwenden.
"devtools_page"Eine allgemeine Einführung in die Verwendung von APIs für Entwicklertools finden Sie in der Zusammenfassung der APIs für Entwicklertools.
Übersicht
Informationen zu Netzwerkanfragen werden im HTTP-Archivformat (HAR) dargestellt. Die Beschreibung von HAR würde den Rahmen dieses Dokuments sprengen. Weitere Informationen finden Sie in der HAR v1.2-Spezifikation.
In Bezug auf HAR gibt die Methode chrome.devtools.network.getHAR() das gesamte HAR-Log zurück, während
das Ereignis chrome.devtools.network.onRequestFinished den HAR-Eintrag als Argument für den Ereignis
Callback bereitstellt.
Aus Effizienzgründen werden Anfrageninhalte nicht als Teil von HAR bereitgestellt. Sie können die Methode getContent() der Anfrage aufrufen, um Inhalte abzurufen.
Wenn das Fenster der Entwicklertools nach dem Laden der Seite geöffnet wird, fehlen möglicherweise einige Anfragen im Array der Einträge, die von getHAR() zurückgegeben werden. Aktualisieren Sie die Seite, um alle Anfragen zu erhalten. Im Allgemeinen sollte die Liste der von getHAR() zurückgegebenen Anfragen mit der Liste übereinstimmen, die im Netzwerkbereich angezeigt wird.
Beispiele
Der folgende Code protokolliert die URLs aller Bilder, die größer als 40 KB sind, während sie geladen werden:
chrome.devtools.network.onRequestFinished.addListener(
function(request) {
if (request.response.bodySize > 40*1024) {
chrome.devtools.inspectedWindow.eval(
'console.log("Large image: " + unescape("' +
escape(request.request.url) + '"))');
}
}
);
Wenn Sie diese API testen möchten, installieren Sie die Beispiele für die DevTools API aus dem Repository chrome-extension-samples.
Typen
Request
Stellt eine Netzwerkanfrage für eine Dokumentressource (Skript, Bild usw.) dar. Eine Referenz finden Sie in der HAR-Spezifikation.
Properties
-
getContent
void
PromiseGibt den Inhalt des Antworttexts zurück.
Die Funktion
getContentsieht so aus:(callback?: function) => {...}
-
callback
function optional
Der Parameter
callbacksieht so aus:(response: object) => void
-
Antwort
Objekt
AusstehendEin Objekt, das den Antworttext und seine Codierung enthält.
-
Inhalt
String
Inhalt des Antworttexts (möglicherweise codiert).
-
Codierung
String
Leer, wenn der Inhalt nicht codiert ist, andernfalls der Name der Codierung. Derzeit wird nur base64 unterstützt.
-
-
-
Ausgabe
Promise<object>
AusstehendEine Funktion, die den Antworttext empfängt, wenn die Anfrage abgeschlossen ist.
Promises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
-
Methoden
getHAR()
chrome.devtools.network.getHAR(
callback?: function,
): Promise<object>
Gibt ein HAR-Log zurück, das alle bekannten Netzwerkanfragen enthält.
Parameter
-
callback
function optional
Der Parameter
callbacksieht so aus:(harLog: object) => void
-
harLog
Objekt
Ein HAR-Log. Weitere Informationen finden Sie in der HAR-Spezifikation.
-
Ausgabe
-
Promise<object>
AusstehendEine Funktion, die das HAR-Log empfängt, wenn die Anfrage abgeschlossen ist.
Promises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
Ereignisse
onNavigated
chrome.devtools.network.onNavigated.addListener(
callback: function,
)
Wird ausgelöst, wenn das untersuchte Fenster zu einer neuen Seite navigiert.
Parameter
-
Funktion
Der Parameter
callbacksieht so aus:(url: string) => void
-
String
-
onRequestFinished
chrome.devtools.network.onRequestFinished.addListener(
callback: function,
)
Wird ausgelöst, wenn eine Netzwerkanfrage abgeschlossen ist und alle Anfragedaten verfügbar sind.