תיאור
אפשר להשתמש ב-API של chrome.devtools.network כדי לאחזר את המידע על בקשות לאחזור מהרשת שמוצגות על ידי הכלים למפתחים בחלונית "רשת".
המידע על בקשות לאחזור מהרשת מיוצג בפורמט HTTP Archive (HAR). התיאור של HAR לא נכלל במסמך הזה, אפשר לעיין במפרט של HAR v1.2.
במונחים של HAR, השיטה browser.devtools.network.getHAR() מחזירה את כל יומן ה-HAR, והאירוע browser.devtools.network.onRequestFinished מספק רשומת HAR כארגומנט לקריאה החוזרת (callback) של האירוע.
שימו לב שתוכן הבקשה לא נכלל בקובץ ה-HAR מטעמי יעילות. אפשר להפעיל את השיטה getContent() של הבקשה כדי לאחזר תוכן.
אם חלון הכלים למפתחים נפתח אחרי שהדף נטען, יכול להיות שחלק מהבקשות חסרות במערך הרשומות שמוחזר על ידי getHAR(). כדי לקבל את כל הבקשות, צריך לטעון מחדש את הדף. באופן כללי, רשימת הבקשות שמוחזרת על ידי getHAR() צריכה להתאים לזו שמוצגת בחלונית "רשת".
במאמר סיכום ממשקי ה-API של כלי הפיתוח יש מבוא כללי לשימוש בממשקי ה-API של כלי הפיתוח.
מניפסט
דוגמאות
הקוד הבא מתעד כתובות URL של כל התמונות שגדולות מ-40KB כשהן נטענות:
browser.devtools.network.onRequestFinished.addListener(
function(request) {
if (request.response.bodySize > 40*1024) {
browser.devtools.inspectedWindow.eval(
'console.log("Large image: " + unescape("' +
escape(request.request.url) + '"))');
}
}
);
כדי לנסות את ה-API הזה, מתקינים את הדוגמאות ל-API של כלי הפיתוח ממאגר chrome-extension-samples.
סוגים
Request
מייצג בקשה לאחזור מהרשת של משאב מסמך (סקריפט, תמונה וכו'). לעיון, אפשר לעבור אל מפרט HAR.
מאפיינים
-
getContent
void
מחזירה את התוכן של גוף התגובה.
הפונקציה
getContentנראית כך:() => {...}-
החזרות
Promise<object>
Chrome 151 ואילך browser.* מגרסה Chrome 152פונקציה שמקבלת את גוף התגובה כשהבקשה מסתיימת.
-
Methods
getHAR()
browser.devtools.network.getHAR(): Promise<object>
הפונקציה מחזירה יומן HAR שמכיל את כל הבקשות הידועות לאחזור מהרשת.
החזרות
-
Promise<object>
Chrome 151 ואילך browser.* מגרסה Chrome 152פונקציה שמקבלת את יומן ה-HAR כשהבקשה מסתיימת.
אירועים
onNavigated
browser.devtools.network.onNavigated.addListener(
callback: function,
)
מופעל כשהחלון שנבדק מנווט לדף חדש.
פרמטרים
-
פונקציה
הפרמטר
callbackנראה כך:(url: string) => void
-
מחרוזת
-
onRequestFinished
browser.devtools.network.onRequestFinished.addListener(
callback: function,
)
מופעל כשבקשה לאחזור מהרשת מסתיימת וכל נתוני הבקשה זמינים.