Beschrijving
Gebruik de chrome.devtools.network API om de informatie over netwerkverzoeken op te halen die wordt weergegeven in het netwerkpaneel van de ontwikkelaarstools.
Manifest
De volgende sleutels moeten in het manifest worden gedeclareerd om deze API te kunnen gebruiken.
"devtools_page"Zie het overzicht van de DevTools API's voor een algemene introductie tot het gebruik van de Developer Tools API's.
Overzicht
Informatie over netwerkverzoeken wordt weergegeven in het HTTP Archive-formaat ( HAR ). Een beschrijving van HAR valt buiten het bestek van dit document; raadpleeg hiervoor de HAR v1.2-specificatie .
Wat HAR betreft, retourneert de methode chrome.devtools.network.getHAR() het volledige HAR-logboek , terwijl de gebeurtenis chrome.devtools.network.onRequestFinished een HAR-item als argument aan de gebeurteniscallback doorgeeft.
Houd er rekening mee dat de inhoud van het verzoek om efficiëntieredenen niet als onderdeel van HAR wordt meegeleverd. U kunt getContent() methode van het verzoek aanroepen om de inhoud op te halen.
Als het venster Ontwikkelaarstools wordt geopend nadat de pagina is geladen, ontbreken mogelijk enkele verzoeken in de lijst met items die door getHAR() worden geretourneerd. Vernieuw de pagina om alle verzoeken te ontvangen. Over het algemeen moet de lijst met verzoeken die door getHAR() wordt geretourneerd, overeenkomen met de lijst die in het netwerkpaneel wordt weergegeven.
Voorbeelden
De volgende code registreert de URL's van alle afbeeldingen groter dan 40 KB zodra ze worden geladen:
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) + '"))');
}
}
);
Om deze API uit te proberen, installeer je de devtools API-voorbeelden uit de chrome-extension-samples repository.
Soorten
Request
Dit vertegenwoordigt een netwerkverzoek voor een documentbron (script, afbeelding, enzovoort). Zie de HAR-specificatie voor meer informatie.
Eigenschappen
- getContent
leegte
BelofteRetourneert de inhoud van de responsbody.
De
getContentfunctie ziet er als volgt uit:(callback?: function) => {...}
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:(response: object) => void
- antwoord
voorwerp
In behandelingEen object dat de responsbody en de bijbehorende codering bevat.
- inhoud
snaar
Inhoud van het antwoord (mogelijk gecodeerd).
- codering
snaar
Leeg als de inhoud niet gecodeerd is, anders de coderingsnaam. Momenteel wordt alleen base64 ondersteund.
- retourneert
Promise<object>
In behandelingEen functie die de responsbody ontvangt wanneer het verzoek is voltooid.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
Methoden
getHAR()
chrome.devtools.network.getHAR(
callback?: function,
): Promise<object>
Retourneert een HAR-logbestand met alle bekende netwerkverzoeken.
Parameters
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:(harLog: object) => void
- harLog
voorwerp
Een HAR-logboek. Zie de HAR-specificatie voor meer informatie.
Retourneert
Promise<object>
In behandelingEen functie die het HAR-logbestand ontvangt wanneer het verzoek is voltooid.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
Evenementen
onNavigated
chrome.devtools.network.onNavigated.addListener(
callback: function,
)
Wordt geactiveerd wanneer het geïnspecteerde venster naar een nieuwe pagina navigeert.
Parameters
functie
De
callbackparameter ziet er als volgt uit:(url: string) => void
snaar
onRequestFinished
chrome.devtools.network.onRequestFinished.addListener(
callback: function,
)
Wordt geactiveerd wanneer een netwerkverzoek is voltooid en alle verzoekgegevens beschikbaar zijn.