refresh date: 2026-09-25 robots: noindex
תיאור
אפשר להשתמש ב-API של chrome.webRequest כדי לצפות בתנועה ולנתח אותה, וגם כדי ליירט, לחסום או לשנות בקשות תוך כדי תנועה.
הרשאות
webRequestמניפסט
כדי להשתמש ב-API של בקשות לאחזור מהרשת, צריך להצהיר על ההרשאה "webRequest" במניפסט של התוסף, וגם על הרשאות המארח הנדרשות. כדי ליירט בקשה למשאב משנה, לתוסף צריכה להיות גישה גם לכתובת ה-URL המבוקשת וגם ליוזם שלה. לדוגמה:
{
"name": "My extension",
...
"permissions": [
"webRequest"
],
"host_permissions": [
"*://*.google.com/*"
],
...
}
החל מגרסה 108 של Chrome, אפשר לספק פרטי כניסה באופן אסינכרוני לאירועים של onAuthRequired אם משתמשים בהרשאות "webRequest" ו-"webRequestAuthProvider".
מחזור החיים של בקשות
ה-API של בקשות לאחזור מהרשת מגדיר קבוצה של אירועים שמתרחשים במהלך מחזור החיים של בקשה לאחזור מהרשת. אתם יכולים להשתמש באירועים האלה כדי לצפות בתנועה ולנתח אותה. אירועים סינכרוניים מסוימים יאפשרו לכם ליירט, לחסום או לשנות בקשה.
כאן מוצג מחזור החיים של אירוע לבקשות מוצלחות, ואחריו הגדרות של אירועים:

-
onBeforeRequest(אופציונלי, סינכרוני) - מופעל כשבקשה עומדת להתרחש. האירוע הזה נשלח לפני שנוצר חיבור TCP, ואפשר להשתמש בו כדי לבטל או להפנות מחדש בקשות.
-
onBeforeSendHeaders(אופציונלי, סינכרוני) - מופעל כשבקשה עומדת להתרחש והכותרות הראשוניות הוכנו. האירוע נועד לאפשר לתוספים להוסיף, לשנות ולמחוק כותרות של בקשות (*). האירוע
onBeforeSendHeadersמועבר לכל המנויים, כך שמנויים שונים עשויים לנסות לשנות את הבקשה. בקטע פרטי ההטמעה מוסבר איך המערכת מטפלת במצב כזה. אפשר להשתמש באירוע הזה כדי לבטל את הבקשה. onSendHeaders- מופעל אחרי שלכל התוספים הייתה הזדמנות לשנות את כותרות הבקשה, ומציג את הגרסה הסופית (*). האירוע מופעל לפני שהכותרות נשלחות לרשת. האירוע הזה הוא אינפורמטיבי ומטופל באופן אסינכרוני. אי אפשר לשנות או לבטל את הבקשה.
-
onHeadersReceived(אופציונלי, סינכרוני) - מופעל בכל פעם שמתקבלת כותרת תגובה של HTTP(S). בגלל הפניות אוטומטיות ובקשות אימות, זה יכול לקרות כמה פעמים בכל בקשה. האירוע הזה נועד לאפשר לתוספים להוסיף, לשנות ולמחוק כותרות תגובה, כמו כותרות Content-Type נכנסות. ההוראות לשמירה במטמון מעובדות לפני שהאירוע הזה מופעל, ולכן שינוי של כותרות כמו Cache-Control לא משפיע על המטמון של הדפדפן. אתם יכולים גם לבטל את הבקשה או להפנות אותה למקום אחר.
-
onAuthRequired(אופציונלי, סינכרוני) - מופעל כשבקשה דורשת אימות של המשתמש. אפשר לטפל באירוע הזה באופן סינכרוני כדי לספק פרטי כניסה לאימות. חשוב לזכור שתוספים עלולים לספק פרטי כניסה לא תקינים. חשוב לוודא שלא נכנסים ללולאה אינסופית על ידי הזנה חוזרת של פרטי כניסה לא חוקיים. אפשר להשתמש בזה גם כדי לבטל את הבקשה.
onBeforeRedirect- מופעל כשעומדת להתבצע הפניה אוטומטית. הפניה אוטומטית יכולה להיות מופעלת על ידי קוד תגובת HTTP או על ידי תוסף. האירוע הזה הוא אינפורמטיבי ומטופל באופן אסינכרוני. הוא לא מאפשר לשנות או לבטל את הבקשה.
onResponseStarted- מופעל כשמתקבל הבייט הראשון של גוף התגובה. בבקשות HTTP, המשמעות היא ששורת הסטטוס וכותרות התגובה זמינות. האירוע הזה הוא לידיעה בלבד והוא מטופל באופן אסינכרוני. אי אפשר לשנות או לבטל את הבקשה.
onCompleted- מופעל כשבקשה טופלה בהצלחה.
onErrorOccurred- מופעל כשלא ניתן לעבד בקשה בהצלחה.
ה-API של בקשות לאחזור מהרשת מבטיח שבכל בקשה, האירוע האחרון שיופעל יהיה onCompleted או onErrorOccurred, מלבד חריג אחד: אם בקשה מופנית לכתובת URL מסוג data://, האירוע האחרון שידווח יהיה onBeforeRedirect.
* חשוב לדעת שה-API של בקשות לאחזור מהרשת מציג לתוסף הפשטה של מקבץ הרשת (network stack). באופן פנימי, אפשר לפצל בקשה אחת של כתובת URL לכמה בקשות HTTP (לדוגמה, כדי לאחזר טווחי בייטים נפרדים מקובץ גדול) או לטפל בה באמצעות מקבץ הרשת (network stack) בלי לתקשר עם הרשת. לכן, ה-API לא מספק את כותרות ה-HTTP הסופיות שנשלחות לרשת. לדוגמה, כל הכותרות שקשורות לשמירה במטמון לא גלויות לתוסף.
הכותרות הבאות לא נשלחות כרגע לאירוע onBeforeSendHeaders. הרשימה הזו לא בהכרח מלאה או יציבה.
- אישור
- סמל המטמון
- חיבור
- אורך התוכן
- מארח
- If-Modified-Since
- If-None-Match
- If-Range
- נתונים חלקיים
- Pragma
- Proxy-Authorization
- Proxy-Connection
- קידוד העברה
החל מגרסה 79 של Chrome, שינויים בכותרות של בקשות משפיעים על בדיקות של שיתוף משאבים בין מקורות (CORS). אם הכותרות ששונו לבקשות ממקורות שונים לא עומדות בקריטריונים, תישלח בקשת קדם-הפעלה במסגרת CORS כדי לשאול את השרת אם אפשר לקבל כותרות כאלה. אם אתם באמת צריכים לשנות כותרות באופן שמפר את פרוטוקול CORS, אתם צריכים לציין את 'extraHeaders' ב-opt_extraInfoSpec. מצד שני, שינויים בכותרת התגובה לא עובדים כדי להטעות את בדיקות ה-CORS. אם אתם צריכים להטעות את פרוטוקול ה-CORS, אתם צריכים גם לציין את 'extraHeaders' לשינויים בתגובה.
החל מגרסה 79 של Chrome, כברירת מחדל, webRequest API לא מיירט בקשות ותגובות קדם-הפעלה של CORS. בקשת קדם-הפעלה של CORS לכתובת URL של בקשה גלויה לתוסף אם יש מאזין עם 'extraHeaders' שצוין ב-opt_extraInfoSpec לכתובת ה-URL של הבקשה.
onBeforeRequest יכול גם לקבל 'extraHeaders' מ-Chrome 79.
החל מגרסה 79 של Chrome, כותרת הבקשה הבאה לא מסופקת ואי אפשר לשנות או להסיר אותה בלי לציין את 'extraHeaders' ב-opt_extraInfoSpec:
- מקור
החל מגרסה 72 של Chrome, אם אתם צריכים לשנות תגובות לפני ש-Cross Origin Read Blocking (CORB) יכול לחסום את התגובה, אתם צריכים לציין את 'extraHeaders' ב-opt_extraInfoSpec.
החל מגרסה 72 של Chrome, כותרות הבקשות הבאות לא מסופקות ואי אפשר לשנות או להסיר אותן בלי לציין את 'extraHeaders' ב-opt_extraInfoSpec:
- Accept-Language
- Accept-Encoding
- אתר מפנה
- קובץ Cookie
החל מגרסה 72 של Chrome, כותרת התגובה Set-Cookie לא מסופקת ואי אפשר לשנות או להסיר אותה בלי לציין את 'extraHeaders' ב-opt_extraInfoSpec.
החל מגרסה 89 של Chrome, אי אפשר לשנות או להסיר את כותרת התגובה X-Frame-Options בלי לציין את 'extraHeaders' ב-opt_extraInfoSpec.
webRequest API חושף רק בקשות שלתוסף יש הרשאה לראות, בהתאם להרשאות המארח שלו. בנוסף, אפשר לגשת רק לסכימות הבאות: http://, https://, ftp://, file://, ws:// (מגרסת Chrome 58), wss:// (מגרסת Chrome 58), urn: (מגרסת Chrome 91) או chrome-extension://. בנוסף, בקשות מסוימות עם כתובות URL שמשתמשות באחת מהסכימות שלמעלה מוסתרות. הן כוללות את chrome-extension://other_extension_id כאשר other_extension_id הוא לא המזהה של התוסף לטיפול בבקשה, את https://www.google.com/chrome ובקשות רגישות אחרות שחיוניות לפונקציונליות של הדפדפן. בנוסף, בקשות XMLHttpRequest סינכרוניות מהתוסף מוסתרות מגורמים מטפלים באירועים שחוסמים, כדי למנוע מבוי סתום. שימו לב: בחלק מהסכימות הנתמכות, קבוצת האירועים הזמינים עשויה להיות מוגבלת בגלל אופי הפרוטוקול התואם. לדוגמה, עבור הסכימה file:, אפשר לשלוח רק את onBeforeRequest, onResponseStarted, onCompleted ו-onErrorOccurred.
החל מגרסה 58 של Chrome, ה-API של webRequest תומך ביירוט של בקשת לחיצת היד של WebSocket. מכיוון שהלחיצת היד מתבצעת באמצעות בקשת שדרוג של HTTP, התהליך שלה מתאים למודל webRequest שמכוון ל-HTTP. שימו לב שה-API לא מיירט:
- הודעות נפרדות שנשלחות דרך חיבור WebSocket קיים.
- החיבור ל-WebSocket נסגר.
אין תמיכה בהפניות אוטומטיות לבקשות WebSocket.
החל מגרסה 72 של Chrome, תוסף יוכל ליירט בקשה רק אם יש לו הרשאות מארח גם לכתובת ה-URL המבוקשת וגם ליוזם הבקשה.
החל מגרסה 96 של Chrome, ה-API של webRequest תומך ביירוט של בקשת לחיצת היד של WebTransport דרך HTTP/3. מכיוון שהלחיצת היד מתבצעת באמצעות בקשת HTTP CONNECT, התהליך שלה מתאים למודל webRequest שמתמקד ב-HTTP. חשוב לדעת:
- אחרי שהסשן נוצר, התוספים לא יכולים לצפות בסשן או להתערב בו באמצעות webRequest API.
- המערכת מתעלמת משינוי של כותרות בקשות HTTP ב-
onBeforeSendHeaders. - הפניות אוטומטיות ואימותים לא נתמכים ב-WebTransport דרך HTTP/3.
מושגים
כמו שמוסבר בסעיפים הבאים, אירועים ב-API של בקשות לאחזור מהרשת משתמשים במזהי בקשות, ואפשר לציין מסננים ומידע נוסף כשרושמים רכיבי event listener.
מזהי בקשות
לכל בקשה יש מזהה בקשה. המזהה הזה ייחודי לסשן בדפדפן ולהקשר של התוסף. הוא נשאר קבוע במהלך מחזור החיים של הבקשה, ואפשר להשתמש בו כדי להתאים אירועים לאותה בקשה. חשוב לשים לב שכמה בקשות HTTP ממופות לבקשה אחת לאחזור מהרשת במקרה של הפניית HTTP או אימות HTTP.
רישום של רכיבי event listener
כדי לרשום רכיב event listener לבקשה לאחזור מהרשת, משתמשים בווריאציה של הפונקציה הרגילה addListener(). בנוסף לציון פונקציית קריאה חוזרת, צריך לציין ארגומנט של מסנן, ואפשר לציין ארגומנט אופציונלי של מידע נוסף.
שלושת הארגומנטים של addListener() של ה-API של בקשות לאחזור מהרשת מוגדרים כך:
var callback = function(details) {...};
var filter = {...};
var opt_extraInfoSpec = [...];
דוגמה להאזנה לאירוע onBeforeRequest:
chrome.webRequest.onBeforeRequest.addListener(
callback, filter, opt_extraInfoSpec);
כל קריאה ל-addListener() מקבלת פונקציית קריאה חוזרת (callback) חובה בתור הפרמטר הראשון. לפונקציית הקריאה החוזרת הזו מועבר מילון שמכיל מידע על הבקשה הנוכחית לכתובת URL. המידע במילון הזה תלוי בסוג האירוע הספציפי ובתוכן של opt_extraInfoSpec.
אם המערך האופציונלי opt_extraInfoSpec מכיל את המחרוזת 'blocking' (מותר רק באירועים ספציפיים), פונקציית הקריאה החוזרת מטופלת באופן סינכרוני. כלומר, הבקשה נחסמת עד שפונקציית הקריאה החוזרת מחזירה ערך. במקרה כזה, הקריאה החוזרת יכולה להחזיר webRequest.BlockingResponse שקובע את המשך מחזור החיים של הבקשה. בהתאם להקשר, התגובה הזו מאפשרת לבטל או להפנות מחדש בקשה (onBeforeRequest), לבטל בקשה או לשנות כותרות (onBeforeSendHeaders, onHeadersReceived) ולבטל בקשה או לספק פרטי כניסה לאימות (onAuthRequired).
אם המערך האופציונלי opt_extraInfoSpec מכיל את המחרוזת 'asyncBlocking' (מותר רק ל-onAuthRequired), התוסף יכול ליצור את webRequest.BlockingResponse באופן אסינכרוני.
webRequest.RequestFilter filter מאפשר להגביל את הבקשות שבהן מופעלים אירועים במאפיינים שונים:
- כתובות URL
- תבניות URL כמו
*://www.google.com/foo*bar. - סוגים
- סוגי בקשות כמו
main_frame(מסמך שנטען למסגרת ברמה העליונה),sub_frame(מסמך שנטען למסגרת מוטמעת) ו-image(תמונה באתר).webRequest.RequestFilter. - מזהה הכרטיסייה
- המזהה של כרטיסייה אחת.
- מזהה החלון
- המזהה של חלון.
בהתאם לסוג האירוע, אפשר לציין מחרוזות ב-opt_extraInfoSpec כדי לבקש מידע נוסף על הבקשה. השדה הזה משמש כדי לספק מידע מפורט על נתוני הבקשה רק אם מבקשים זאת במפורש.
פרטי ההטמעה
כשמפתחים תוסף שמשתמש ב-API של בקשות לאחזור מהרשת, חשוב להבין כמה פרטים לגבי ההטמעה:
web_accessible_resources
כשתוסף משתמש בממשקי API של webRequest כדי להפנות בקשה למשאב ציבורי אל משאב שלא נגיש באינטרנט, הוא נחסם ומוצגת שגיאה. האמור למעלה נכון גם אם המשאב שלא נגיש באינטרנט נמצא בבעלות התוסף שמבצע את ההפניה האוטומטית. כדי להצהיר על משאבים לשימוש עם ממשקי API של declarativeWebRequest, צריך להצהיר על המערך "web_accessible_resources" ולאכלס אותו במניפסט, כפי שמתואר כאן.
פתרון מחלוקות
בהטמעה הנוכחית של ה-API של בקשות לאחזור מהרשת, בקשה נחשבת כמבוטלת אם לפחות תוסף אחד מורה לבטל אותה. אם תוסף מבטל בקשה, כל התוספים מקבלים הודעה על כך באמצעות אירוע onErrorOccurred. רק תוסף אחד יכול להפנות בקשה או לשנות כותרת בכל פעם. אם יותר מתוסף אחד מנסה לשנות את הבקשה, התוסף שהותקן אחרון הוא הקובע, והמערכת מתעלמת מכל השאר. התוסף לא מקבל הודעה אם ההוראה שלו לשנות או להפנות את הבקשה לא בוצעה.
שמירה במטמון
ב-Chrome יש שני סוגי מטמון – מטמון בדיסק ומטמון מהיר מאוד בזיכרון. משך החיים של מטמון בזיכרון קשור למשך החיים של תהליך רינדור, שתואם בערך לכרטיסייה.
בקשות שנענות מהמטמון בזיכרון לא גלויות ל-API של בקשות לאחזור מהרשת. אם ה-request handler משנה את ההתנהגות שלו (לדוגמה, ההתנהגות שלפיה בקשות נחסמות), יכול להיות שרענון פשוט של הדף לא יכבד את ההתנהגות שהשתנתה. כדי לוודא שהשינוי בהתנהגות יתבצע, צריך להפעיל את handlerBehaviorChanged() כדי לנקות את מטמון הזיכרון. אבל אל תעשו את זה לעיתים קרובות, כי ניקוי המטמון הוא פעולה יקרה מאוד. אין צורך להפעיל את handlerBehaviorChanged() אחרי שרושמים או מבטלים את הרישום של רכיב event listener.
חותמות זמן
המאפיין timestamp של אירועי בקשות לאחזור מהרשת מובטח להיות עקבי רק באופן פנימי.
השוואה בין אירוע אחד לאירוע אחר תיתן לכם את ההיסט הנכון ביניהם, אבל השוואה שלהם לזמן הנוכחי בתוך התוסף (למשל, באמצעות (new Date()).getTime()) עשויה להניב תוצאות לא צפויות.
טיפול בשגיאות
אם תנסו לרשום אירוע עם ארגומנטים לא חוקיים, תופיע שגיאת JavaScript והגורם המטפל באירועים לא יירשם. אם נזרקת שגיאה בזמן הטיפול באירוע, או אם גורם מטפל באירועים מחזיר תגובת חסימה לא חוקית, הודעת שגיאה נרשמת במסוף של התוסף, והגורם המטפל מתעלם מהבקשה הזו.
דוגמאות
בדוגמה הבאה מוסבר איך לחסום את כל הבקשות אל www.evil.com:
chrome.webRequest.onBeforeRequest.addListener(
function(details) {
return {cancel: details.url.indexOf("://www.evil.com/") != -1};
},
{urls: ["<all_urls>"]},
["blocking"]
);
הפונקציה הזו משתמשת בגורם מטפל באירועים חוסם, ולכן היא דורשת את ההרשאות "webRequest" ו-"webRequestBlocking" בקובץ המניפסט.
בדוגמה הבאה מושגת אותה מטרה בצורה יעילה יותר, כי בקשות שלא מטרגטות את www.evil.com לא צריכות לעבור לתוסף:
chrome.webRequest.onBeforeRequest.addListener(
function(details) { return {cancel: true}; },
{urls: ["*://www.evil.com/*"]},
["blocking"]
);
בדוגמה הבאה מוסבר איך למחוק את הכותרת User-Agent מכל הבקשות:
chrome.webRequest.onBeforeSendHeaders.addListener(
function(details) {
for (var i = 0; i < details.requestHeaders.length; ++i) {
if (details.requestHeaders[i].name === 'User-Agent') {
details.requestHeaders.splice(i, 1);
break;
}
}
return {requestHeaders: details.requestHeaders};
},
{urls: ["<all_urls>"]},
["blocking", "requestHeaders"]
);
כדי לנסות את ה-API של chrome.webRequest, מתקינים את הדוגמה של webRequest ממאגר chrome-extension-samples.
סוגים
BlockingResponse
מחזיר ערך לגורמים מטפלים באירועים שהוחל עליהם extraInfoSpec מסוג blocking. מאפשר לגורם המטפל באירועים לשנות בקשות לאחזור מהרשת.
מאפיינים
-
authCredentials
object optional
משמש רק כתגובה לאירוע onAuthRequired. אם מגדירים את הפרמטר, הבקשה נשלחת באמצעות פרטי הכניסה שסופקו.
-
סיסמה
מחרוזת
-
שם משתמש
מחרוזת
-
-
ביטול
בוליאני אופציונלי
אם הערך הוא true, הבקשה מבוטלת. כך הבקשה לא תישלח. אפשר להשתמש בזה כתגובה לאירועים onBeforeRequest, onBeforeSendHeaders, onHeadersReceived ו-onAuthRequired.
-
redirectUrl
מחרוזת אופציונלי
משמש רק כתגובה לאירועים onBeforeRequest ו-onHeadersReceived. אם המדיניות מוגדרת, הבקשה המקורית לא נשלחת או לא מושלמת, ובמקום זאת היא מופנית לכתובת ה-URL שצוינה. מותר להפנות לסכימות שאינן HTTP, כמו
data:. הפניות אוטומטיות שמתחילות על ידי פעולת הפניה אוטומטית משתמשות בשיטת הבקשה המקורית להפניה האוטומטית, למעט חריג אחד: אם ההפניה האוטומטית מתחילה בשלב onHeadersReceived, ההפניה האוטומטית תונפק באמצעות שיטת אחזור נתונים. המערכת מתעלמת מהפניות מכתובות URL עם הסכימותws://ו-wss://. -
requestHeaders
HttpHeaders אופציונלי
משמש רק כתגובה לאירוע onBeforeSendHeaders. אם מגדירים את המדיניות, הבקשה נשלחת עם כותרות הבקשה האלה במקום זאת.
-
responseHeaders
HttpHeaders אופציונלי
משמש רק כתגובה לאירוע onHeadersReceived. אם מגדירים את האפשרות הזו, המערכת מניחה שהשרת הגיב עם כותרות התגובה האלה במקום זאת. צריך להחזיר את
responseHeadersרק אם באמת רוצים לשנות את הכותרות כדי להגביל את מספר ההתנגשויות (רק תוסף אחד יכול לשנות אתresponseHeadersלכל בקשה).
FormDataItem
מכיל נתונים שמועברים בתוך נתוני הטופס. בטופס urlencoded, הנתונים מאוחסנים כמחרוזת אם הם מחרוזת utf-8, ואחרת הם מאוחסנים כ-ArrayBuffer. עבור form-data, זה ArrayBuffer. אם form-data מייצג העלאת קובץ, זו מחרוזת עם שם הקובץ, אם שם הקובץ צוין.
טיפוסים בני מנייה (enum)
ArrayBuffer
מחרוזת
HttpHeaders
מערך של כותרות HTTP. כל כותרת מיוצגת כמילון שמכיל את המפתחות name וגם value או binaryValue.
סוג
object[]
מאפיינים
-
binaryValue
number[] אופציונלי
הערך של כותרת ה-HTTP אם אי אפשר לייצג אותו באמצעות UTF-8, מאוחסן כערכי בייטים נפרדים (0..255).
-
שם
מחרוזת
השם של כותרת ה-HTTP.
-
ערך
מחרוזת אופציונלי
הערך של כותרת ה-HTTP, אם אפשר לייצג אותו באמצעות UTF-8.
IgnoredActionType
טיפוסים בני מנייה (enum)
"redirect"
"request_headers"
"response_headers"
"auth_credentials"
OnAuthRequiredOptions
טיפוסים בני מנייה (enum)
"responseHeaders"
מציין שכותרות התגובה צריכות להיכלל באירוע.
"blocking"
מציין שהבקשה חסומה עד שפונקציית הקריאה החוזרת מחזירה ערך.
"asyncBlocking"
מציין שפונקציית הקריאה החוזרת מטופלת באופן אסינכרוני.
"extraHeaders"
מציין שכותרות יכולות להפר את שיתוף המשאבים ממקורות שונים (CORS).
OnBeforeRedirectOptions
טיפוסים בני מנייה (enum)
"responseHeaders"
מציין שכותרות התגובה צריכות להיכלל באירוע.
"extraHeaders"
מציין שכותרות יכולות להפר את שיתוף המשאבים ממקורות שונים (CORS).
OnBeforeRequestOptions
טיפוסים בני מנייה (enum)
"blocking"
מציין שהבקשה חסומה עד שפונקציית הקריאה החוזרת מחזירה ערך.
"requestBody"
מציין שגוף הבקשה צריך להיכלל באירוע.
"extraHeaders"
מציין שכותרות יכולות להפר את שיתוף המשאבים ממקורות שונים (CORS).
OnBeforeSendHeadersOptions
טיפוסים בני מנייה (enum)
"requestHeaders"
מציין שצריך לכלול את כותרת הבקשה באירוע.
"blocking"
מציין שהבקשה חסומה עד שפונקציית הקריאה החוזרת מחזירה ערך.
"extraHeaders"
מציין שכותרות יכולות להפר את שיתוף המשאבים ממקורות שונים (CORS).
OnCompletedOptions
טיפוסים בני מנייה (enum)
"responseHeaders"
מציין שכותרות התגובה צריכות להיכלל באירוע.
"extraHeaders"
מציין שכותרות יכולות להפר את שיתוף המשאבים ממקורות שונים (CORS).
OnErrorOccurredOptions
ערך
"extraHeaders"
OnHeadersReceivedOptions
טיפוסים בני מנייה (enum)
"blocking"
מציין שהבקשה חסומה עד שפונקציית הקריאה החוזרת מחזירה ערך.
"responseHeaders"
מציין שכותרות התגובה צריכות להיכלל באירוע.
"extraHeaders"
מציין שכותרות יכולות להפר את שיתוף המשאבים ממקורות שונים (CORS).
"securityInfo"
מציין שצריך לכלול את SecurityInfo באירוע.
"securityInfoRawDer"
מציין שצריך לכלול באירוע את SecurityInfo עם בייטים גולמיים של אישורים.
OnResponseStartedOptions
טיפוסים בני מנייה (enum)
"responseHeaders"
מציין שכותרות התגובה צריכות להיכלל באירוע.
"extraHeaders"
מציין שכותרות יכולות להפר את שיתוף המשאבים ממקורות שונים (CORS).
OnSendHeadersOptions
טיפוסים בני מנייה (enum)
"requestHeaders"
מציין שצריך לכלול את כותרת הבקשה באירוע.
"extraHeaders"
מציין שכותרות יכולות להפר את שיתוף המשאבים ממקורות שונים (CORS).
RequestFilter
אובייקט שמתאר מסננים שצריך להחיל על אירועי webRequest.
מאפיינים
-
tabId
מספר אופציונלי
-
סוגים
ResourceType[] אופציונלי
רשימה של סוגי בקשות. בקשות שלא תואמות לאף אחד מהסוגים יסוננו.
-
כתובות אתרים
string[]
רשימה של כתובות URL או תבניות URL. בקשות שלא תואמות לאף אחת מכתובות ה-URL יסוננו.
-
windowId
מספר אופציונלי
ResourceType
טיפוסים בני מנייה (enum)
"main_frame"
מציין שהמשאב הוא המסגרת הראשית.
"sub_frame"
מציין שהמשאב הוא מסגרת משנה.
"stylesheet"
מציין שהמשאב הוא גיליון סגנונות.
"script"
מציין שהמשאב הוא סקריפט.
"image"
מציין שהמשאב הוא תמונה.
"font"
מציין שהמשאב הוא גופן.
"object"
מגדיר את המשאב כאובייקט.
"xmlhttprequest"
מציין שהמשאב הוא XMLHttpRequest.
"ping"
מציין שהמשאב הוא פינג.
"csp_report"
מציין שהמשאב הוא דוח של Content Security Policy (CSP).
"media"
מציין שהמשאב הוא אובייקט מדיה.
"websocket"
מציין שהמשאב הוא WebSocket.
"webbundle"
מציין שהמשאב הוא WebBundle.
"אחר"
מציין שהמשאב הוא מסוג שלא נכלל בסוגים שברשימה.
SecurityInfo
מאפיינים
-
אישורים
object[]
רשימת אישורים
-
טביעת אצבע
אובייקט
טביעות האצבע של האישור.
-
sha256
מחרוזת
טביעת אצבע SHA-256 של האישור.
-
-
rawDER
ArrayBuffer אופציונלי
בייטים גולמיים של אישור שרת בקידוד DER
-
-
מדינה (State)
מחרוזת
מצב החיבור. אחת מהאפשרויות: מאובטח, לא מאובטח, פגום.
UploadData
מכיל נתונים שהועלו בבקשת URL.
מאפיינים
-
בייטים
any optional
ArrayBuffer עם עותק של הנתונים.
-
קובץ
מחרוזת אופציונלי
מחרוזת עם הנתיב והשם של הקובץ.
מאפיינים
MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES
המספר המקסימלי של פעמים שאפשר לקרוא ל-handlerBehaviorChanged במרווח זמן רציף של 10 דקות. handlerBehaviorChanged היא בקשה להפעלת פונקציה שצורכת הרבה משאבים, ולכן לא כדאי להפעיל אותה לעיתים קרובות.
ערך
20
Methods
handlerBehaviorChanged()
chrome.webRequest.handlerBehaviorChanged(
callback?: function,
): Promise<void>
צריך לקרוא לפונקציה הזו כשההתנהגות של ה-handlers של webRequest משתנה, כדי למנוע טיפול שגוי בגלל שמירה במטמון. הקריאה לפונקציה הזו יקרה. אל תפעילו אותה לעיתים קרובות.
פרמטרים
-
callback
function optional
הפרמטר
callbackנראה כך:() => void
החזרות
-
Promise<void>
Chrome מגרסה 116 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
אירועים
onActionIgnored
chrome.webRequest.onActionIgnored.addListener(
callback: function,
)
מופעל כשמערכת מתעלמת מהצעה של תוסף לשינוי בקשה לאחזור מהרשת. זה קורה אם יש התנגשויות עם תוספים אחרים.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
פעולה
הפעולה שהוצעה ולא בוצעה.
-
requestId
מחרוזת
מזהה הבקשה. מזהי הבקשות הם ייחודיים לסשן בדפדפן. לכן, אפשר להשתמש בהם כדי לקשר בין אירועים שונים של אותה בקשה.
-
-
onAuthRequired
chrome.webRequest.onAuthRequired.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnAuthRequiredOptions[],
)
מופעל כשמתקבל כשל באימות. למאזין יש שלוש אפשרויות: הוא יכול לספק פרטי כניסה לאימות, לבטל את הבקשה ולהציג את דף השגיאה, או לא לבצע שום פעולה לגבי האתגר. אם המשתמש מספק פרטי כניסה שגויים, יכול להיות שהפונקציה הזו תופעל כמה פעמים לאותה בקשה. הערה: צריך לציין רק אחד מהמצבים 'blocking' או 'asyncBlocking' בפרמטר extraInfoSpec.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object, asyncCallback?: function) => BlockingResponse | undefined
-
פרטים
אובייקט
-
מתחרה
אובייקט
השרת שמבקש אימות.
-
מארח
מחרוזת
-
יציאה
number
-
-
documentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של המסמך ששולח את הבקשה.
-
documentLifecycleChrome מגרסה 106 ואילך
מחזור החיים שבו נמצא המסמך.
-
frameId
number
הערך 0 מציין שהבקשה מתרחשת במסגרת הראשית. ערך חיובי מציין את המזהה של מסגרת משנה שבה הבקשה מתרחשת. אם המסמך של מסגרת (משנה) נטען (
typeהואmain_frameאוsub_frame),frameIdמציין את המזהה של המסגרת הזו, ולא את המזהה של המסגרת החיצונית. מזהי המסגרות הם ייחודיים בכרטיסייה. -
frameTypeChrome מגרסה 106 ואילך
סוג המסגרת שבה הבקשה התרחשה.
-
הגורם היוזם
מחרוזת אופציונלי
Chrome 63 ואילךהמקור שממנו נשלחה הבקשה. ההגדרה הזו לא משתנה בהפניות אוטומטיות. אם המקור אטום, המערכת תשתמש במחרוזת "null".
-
isProxy
בוליאני
True עבור Proxy-Authenticate, False עבור WWW-Authenticate.
-
method
מחרוזת
שיטת HTTP רגילה.
-
parentDocumentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של מסמך ההורה שהמסגרת הזו שייכת לו. השדה הזה לא מוגדר אם אין נכס ראשי.
-
parentFrameId
number
מזהה המסגרת שעוטפת את המסגרת ששלחה את הבקשה. אם אין מסגרת אב, הערך הוא -1.
-
מקבץ שרתי משחק (Realm)
מחרוזת אופציונלי
תחום האימות שסופק על ידי השרת, אם יש כזה.
-
requestId
מחרוזת
מזהה הבקשה. מזהי הבקשות הם ייחודיים לסשן בדפדפן. לכן, אפשר להשתמש בהם כדי לקשר בין אירועים שונים של אותה בקשה.
-
responseHeaders
HttpHeaders אופציונלי
כותרות התגובה של HTTP שהתקבלו יחד עם התגובה הזו.
-
סכמה
מחרוזת
סכמת האימות, למשל Basic או Digest.
-
statusCode
number
Chrome 43 ואילךקוד סטטוס HTTP רגיל שהוחזר על ידי השרת.
-
statusLine
מחרוזת
שורת סטטוס ה-HTTP של התגובה או המחרוזת "HTTP/0.9 200 OK" לתגובות HTTP/0.9 (כלומר, תגובות שאין בהן שורת סטטוס) או מחרוזת ריקה אם אין כותרות.
-
tabId
number
מזהה הכרטיסייה שבה מתבצעת הבקשה. הערך מוגדר כ-1- אם הבקשה לא קשורה לכרטיסייה.
-
timeStamp
number
הזמן שבו האות הזה מופעל, באלפיות השנייה מאז ראשית הזמן.
-
סוג
איך ייעשה שימוש במשאב המבוקש.
-
url
מחרוזת
-
-
asyncCallback
function optional
Chrome 58 ואילךהפרמטר
asyncCallbackנראה כך:(response: BlockingResponse) => void
-
תשובה
-
-
החזרות
BlockingResponse | undefined
אם צוין "blocking" בפרמטר "extraInfoSpec", רכיב ה-event listener צריך להחזיר אובייקט מהסוג הזה.
-
-
סינון
-
extraInfoSpec
OnAuthRequiredOptions[] אופציונלי
onBeforeRedirect
chrome.webRequest.onBeforeRedirect.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnBeforeRedirectOptions[],
)
מופעל כשעומדת להתרחש הפניה אוטומטית שהשרת יזם.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
documentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של המסמך ששולח את הבקשה.
-
documentLifecycleChrome מגרסה 106 ואילך
מחזור החיים שבו נמצא המסמך.
-
frameId
number
הערך 0 מציין שהבקשה מתרחשת במסגרת הראשית. ערך חיובי מציין את המזהה של מסגרת משנה שבה הבקשה מתרחשת. אם המסמך של מסגרת (משנה) נטען (
typeהואmain_frameאוsub_frame),frameIdמציין את המזהה של המסגרת הזו, ולא את המזהה של המסגרת החיצונית. מזהי המסגרות הם ייחודיים בכרטיסייה. -
frameTypeChrome מגרסה 106 ואילך
סוג המסגרת שבה הבקשה התרחשה.
-
fromCache
בוליאני
מציין אם התשובה הזו אוחזרה ממטמון הדיסק.
-
הגורם היוזם
מחרוזת אופציונלי
Chrome 63 ואילךהמקור שממנו נשלחה הבקשה. ההגדרה הזו לא משתנה בהפניות אוטומטיות. אם המקור אטום, המערכת תשתמש במחרוזת "null".
-
ip
מחרוזת אופציונלי
כתובת ה-IP של השרת שאליו נשלחה הבקשה בפועל. שימו לב שהיא יכולה להיות כתובת IPv6 מילולית.
-
method
מחרוזת
שיטת HTTP רגילה.
-
parentDocumentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של מסמך ההורה שהמסגרת הזו שייכת לו. השדה הזה לא מוגדר אם אין נכס ראשי.
-
parentFrameId
number
מזהה המסגרת שעוטפת את המסגרת ששלחה את הבקשה. אם אין מסגרת אב, הערך הוא -1.
-
redirectUrl
מחרוזת
כתובת ה-URL החדשה.
-
requestId
מחרוזת
מזהה הבקשה. מזהי הבקשות הם ייחודיים לסשן בדפדפן. לכן, אפשר להשתמש בהם כדי לקשר בין אירועים שונים של אותה בקשה.
-
responseHeaders
HttpHeaders אופציונלי
כותרות התגובה של HTTP שהתקבלו יחד עם ההפניה האוטומטית הזו.
-
statusCode
number
קוד סטטוס HTTP רגיל שהוחזר על ידי השרת.
-
statusLine
מחרוזת
שורת סטטוס ה-HTTP של התגובה או המחרוזת "HTTP/0.9 200 OK" לתגובות HTTP/0.9 (כלומר, תגובות שאין בהן שורת סטטוס) או מחרוזת ריקה אם אין כותרות.
-
tabId
number
מזהה הכרטיסייה שבה מתבצעת הבקשה. הערך מוגדר כ-1- אם הבקשה לא קשורה לכרטיסייה.
-
timeStamp
number
הזמן שבו האות הזה מופעל, באלפיות השנייה מאז ראשית הזמן.
-
סוג
איך ייעשה שימוש במשאב המבוקש.
-
url
מחרוזת
-
-
-
סינון
-
extraInfoSpec
OnBeforeRedirectOptions[] אופציונלי
onBeforeRequest
chrome.webRequest.onBeforeRequest.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnBeforeRequestOptions[],
)
מופעל כשבקשה עומדת להתרחש.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => BlockingResponse | undefined
-
פרטים
אובייקט
-
documentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של המסמך ששולח את הבקשה.
-
documentLifecycle
extensionTypes.DocumentLifecycle אופציונלי
Chrome מגרסה 106 ואילךמחזור החיים שבו נמצא המסמך.
-
frameId
number
הערך 0 מציין שהבקשה מתרחשת במסגרת הראשית. ערך חיובי מציין את המזהה של מסגרת משנה שבה הבקשה מתרחשת. אם המסמך של מסגרת (משנה) נטען (
typeהואmain_frameאוsub_frame),frameIdמציין את המזהה של המסגרת הזו, ולא את המזהה של המסגרת החיצונית. מזהי המסגרות הם ייחודיים בכרטיסייה. -
frameType
extensionTypes.FrameType אופציונלי
Chrome מגרסה 106 ואילךסוג המסגרת שבה הבקשה התרחשה.
-
הגורם היוזם
מחרוזת אופציונלי
Chrome 63 ואילךהמקור שממנו נשלחה הבקשה. ההגדרה הזו לא משתנה בהפניות אוטומטיות. אם המקור אטום, המערכת תשתמש במחרוזת "null".
-
method
מחרוזת
שיטת HTTP רגילה.
-
parentDocumentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של מסמך ההורה שהמסגרת הזו שייכת לו. השדה הזה לא מוגדר אם אין נכס ראשי.
-
parentFrameId
number
מזהה המסגרת שעוטפת את המסגרת ששלחה את הבקשה. אם אין מסגרת אב, הערך הוא -1.
-
requestBody
object optional
מכיל את נתוני הגוף של בקשת ה-HTTP. המאפיין הזה מסופק רק אם extraInfoSpec מכיל את requestBody.
-
error
מחרוזת אופציונלי
שגיאות בקבלת נתונים מגוף הבקשה.
-
formData
object optional
אם שיטת הבקשה היא POST והגוף הוא רצף של צמדי מפתח/ערך בקידוד UTF8, בפורמט multipart/form-data או application/x-www-form-urlencoded, המילון הזה קיים ולכל מפתח יש רשימה של כל הערכים של המפתח הזה. אם הנתונים הם מסוג מדיה אחר, או אם הם לא תקינים, המילון לא קיים. ערך לדוגמה של המילון הזה הוא {'key': ['value1', 'value2']}.
-
גולמי
UploadData[] אופציונלי
אם שיטת הבקשה היא PUT או POST, והגוף עדיין לא נותח ב-formData, אז רכיבי גוף הבקשה שלא נותחו נכללים במערך הזה.
-
-
requestId
מחרוזת
מזהה הבקשה. מזהי הבקשות הם ייחודיים לסשן בדפדפן. לכן, אפשר להשתמש בהם כדי לקשר בין אירועים שונים של אותה בקשה.
-
tabId
number
מזהה הכרטיסייה שבה מתבצעת הבקשה. הערך מוגדר כ-1- אם הבקשה לא קשורה לכרטיסייה.
-
timeStamp
number
הזמן שבו האות הזה מופעל, באלפיות השנייה מאז ראשית הזמן.
-
סוג
איך ייעשה שימוש במשאב המבוקש.
-
url
מחרוזת
-
-
החזרות
BlockingResponse | undefined
אם צוין "blocking" בפרמטר "extraInfoSpec", רכיב ה-event listener צריך להחזיר אובייקט מהסוג הזה.
-
-
סינון
-
extraInfoSpec
OnBeforeRequestOptions[] אופציונלי
onBeforeSendHeaders
chrome.webRequest.onBeforeSendHeaders.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnBeforeSendHeadersOptions[],
)
מופעל לפני שליחת בקשת HTTP, ברגע שכותרות הבקשה זמינות. זה יכול לקרות אחרי שנוצר חיבור TCP לשרת, אבל לפני שנשלחים נתוני HTTP.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => BlockingResponse | undefined
-
פרטים
אובייקט
-
documentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של המסמך ששולח את הבקשה.
-
documentLifecycleChrome מגרסה 106 ואילך
מחזור החיים שבו נמצא המסמך.
-
frameId
number
הערך 0 מציין שהבקשה מתרחשת במסגרת הראשית. ערך חיובי מציין את המזהה של מסגרת משנה שבה הבקשה מתרחשת. אם המסמך של מסגרת (משנה) נטען (
typeהואmain_frameאוsub_frame),frameIdמציין את המזהה של המסגרת הזו, ולא את המזהה של המסגרת החיצונית. מזהי המסגרות הם ייחודיים בכרטיסייה. -
frameTypeChrome מגרסה 106 ואילך
סוג המסגרת שבה הבקשה התרחשה.
-
הגורם היוזם
מחרוזת אופציונלי
Chrome 63 ואילךהמקור שממנו נשלחה הבקשה. ההגדרה הזו לא משתנה בהפניות אוטומטיות. אם המקור אטום, המערכת תשתמש במחרוזת "null".
-
method
מחרוזת
שיטת HTTP רגילה.
-
parentDocumentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של מסמך ההורה שהמסגרת הזו שייכת לו. השדה הזה לא מוגדר אם אין נכס ראשי.
-
parentFrameId
number
מזהה המסגרת שעוטפת את המסגרת ששלחה את הבקשה. אם אין מסגרת אב, הערך הוא -1.
-
requestHeaders
HttpHeaders אופציונלי
הכותרות של בקשת ה-HTTP שיישלחו עם הבקשה הזו.
-
requestId
מחרוזת
מזהה הבקשה. מזהי הבקשות הם ייחודיים לסשן בדפדפן. לכן, אפשר להשתמש בהם כדי לקשר בין אירועים שונים של אותה בקשה.
-
tabId
number
מזהה הכרטיסייה שבה מתבצעת הבקשה. הערך מוגדר כ-1- אם הבקשה לא קשורה לכרטיסייה.
-
timeStamp
number
הזמן שבו האות הזה מופעל, באלפיות השנייה מאז ראשית הזמן.
-
סוג
איך ייעשה שימוש במשאב המבוקש.
-
url
מחרוזת
-
-
החזרות
BlockingResponse | undefined
אם צוין "blocking" בפרמטר "extraInfoSpec", רכיב ה-event listener צריך להחזיר אובייקט מהסוג הזה.
-
-
סינון
-
extraInfoSpec
OnBeforeSendHeadersOptions[] אופציונלי
onCompleted
chrome.webRequest.onCompleted.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnCompletedOptions[],
)
מופעל כשבקשה הושלמה.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
documentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של המסמך ששולח את הבקשה.
-
documentLifecycleChrome מגרסה 106 ואילך
מחזור החיים שבו נמצא המסמך.
-
frameId
number
הערך 0 מציין שהבקשה מתרחשת במסגרת הראשית. ערך חיובי מציין את המזהה של מסגרת משנה שבה הבקשה מתרחשת. אם המסמך של מסגרת (משנה) נטען (
typeהואmain_frameאוsub_frame),frameIdמציין את המזהה של המסגרת הזו, ולא את המזהה של המסגרת החיצונית. מזהי המסגרות הם ייחודיים בכרטיסייה. -
frameTypeChrome מגרסה 106 ואילך
סוג המסגרת שבה הבקשה התרחשה.
-
fromCache
בוליאני
מציין אם התשובה הזו אוחזרה ממטמון הדיסק.
-
הגורם היוזם
מחרוזת אופציונלי
Chrome 63 ואילךהמקור שממנו נשלחה הבקשה. ההגדרה הזו לא משתנה בהפניות אוטומטיות. אם המקור אטום, המערכת תשתמש במחרוזת "null".
-
ip
מחרוזת אופציונלי
כתובת ה-IP של השרת שאליו נשלחה הבקשה בפועל. שימו לב שהיא יכולה להיות כתובת IPv6 מילולית.
-
method
מחרוזת
שיטת HTTP רגילה.
-
parentDocumentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של מסמך ההורה שהמסגרת הזו שייכת לו. השדה הזה לא מוגדר אם אין נכס ראשי.
-
parentFrameId
number
מזהה המסגרת שעוטפת את המסגרת ששלחה את הבקשה. אם אין מסגרת אב, הערך הוא -1.
-
requestId
מחרוזת
מזהה הבקשה. מזהי הבקשות הם ייחודיים לסשן בדפדפן. לכן, אפשר להשתמש בהם כדי לקשר בין אירועים שונים של אותה בקשה.
-
responseHeaders
HttpHeaders אופציונלי
כותרות התגובה של HTTP שהתקבלו יחד עם התגובה הזו.
-
statusCode
number
קוד סטטוס HTTP רגיל שהוחזר על ידי השרת.
-
statusLine
מחרוזת
שורת סטטוס ה-HTTP של התגובה או המחרוזת "HTTP/0.9 200 OK" לתגובות HTTP/0.9 (כלומר, תגובות שאין בהן שורת סטטוס) או מחרוזת ריקה אם אין כותרות.
-
tabId
number
מזהה הכרטיסייה שבה מתבצעת הבקשה. הערך מוגדר כ-1- אם הבקשה לא קשורה לכרטיסייה.
-
timeStamp
number
הזמן שבו האות הזה מופעל, באלפיות השנייה מאז ראשית הזמן.
-
סוג
איך ייעשה שימוש במשאב המבוקש.
-
url
מחרוזת
-
-
-
סינון
-
extraInfoSpec
OnCompletedOptions[] אופציונלי
onErrorOccurred
chrome.webRequest.onErrorOccurred.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnErrorOccurredOptions[],
)
מופעל כשמתרחשת שגיאה.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
documentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של המסמך ששולח את הבקשה. הערך הזה לא קיים אם הבקשה היא ניווט של מסגרת.
-
documentLifecycleChrome מגרסה 106 ואילך
מחזור החיים שבו נמצא המסמך.
-
error
מחרוזת
תיאור השגיאה. לא מובטח שהמחרוזת הזו תישאר תואמת לדורות קודמים בין גרסאות. אסור לנתח את התוכן שלו ולפעול על פיו.
-
frameId
number
הערך 0 מציין שהבקשה מתרחשת במסגרת הראשית. ערך חיובי מציין את המזהה של מסגרת משנה שבה הבקשה מתרחשת. אם המסמך של מסגרת (משנה) נטען (
typeהואmain_frameאוsub_frame),frameIdמציין את המזהה של המסגרת הזו, ולא את המזהה של המסגרת החיצונית. מזהי המסגרות הם ייחודיים בכרטיסייה. -
frameTypeChrome מגרסה 106 ואילך
סוג המסגרת שבה הבקשה התרחשה.
-
fromCache
בוליאני
מציין אם התשובה הזו אוחזרה ממטמון הדיסק.
-
הגורם היוזם
מחרוזת אופציונלי
Chrome 63 ואילךהמקור שממנו נשלחה הבקשה. ההגדרה הזו לא משתנה בהפניות אוטומטיות. אם המקור אטום, המערכת תשתמש במחרוזת "null".
-
ip
מחרוזת אופציונלי
כתובת ה-IP של השרת שאליו נשלחה הבקשה בפועל. שימו לב שהיא יכולה להיות כתובת IPv6 מילולית.
-
method
מחרוזת
שיטת HTTP רגילה.
-
parentDocumentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של מסמך ההורה שהמסגרת הזו שייכת לו. השדה הזה לא מוגדר אם אין נכס ראשי.
-
parentFrameId
number
מזהה המסגרת שעוטפת את המסגרת ששלחה את הבקשה. אם אין מסגרת אב, הערך הוא -1.
-
requestId
מחרוזת
מזהה הבקשה. מזהי הבקשות הם ייחודיים לסשן בדפדפן. לכן, אפשר להשתמש בהם כדי לקשר בין אירועים שונים של אותה בקשה.
-
tabId
number
מזהה הכרטיסייה שבה מתבצעת הבקשה. הערך מוגדר כ-1- אם הבקשה לא קשורה לכרטיסייה.
-
timeStamp
number
הזמן שבו האות הזה מופעל, באלפיות השנייה מאז ראשית הזמן.
-
סוג
איך ייעשה שימוש במשאב המבוקש.
-
url
מחרוזת
-
-
-
סינון
-
extraInfoSpec
OnErrorOccurredOptions[] אופציונלי
onHeadersReceived
chrome.webRequest.onHeadersReceived.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnHeadersReceivedOptions[],
)
מופעל כשמתקבלות כותרות של תגובת HTTP לבקשה.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => BlockingResponse | undefined
-
פרטים
אובייקט
-
documentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של המסמך ששולח את הבקשה.
-
documentLifecycleChrome מגרסה 106 ואילך
מחזור החיים שבו נמצא המסמך.
-
frameId
number
הערך 0 מציין שהבקשה מתרחשת במסגרת הראשית. ערך חיובי מציין את המזהה של מסגרת משנה שבה הבקשה מתרחשת. אם המסמך של מסגרת (משנה) נטען (
typeהואmain_frameאוsub_frame),frameIdמציין את המזהה של המסגרת הזו, ולא את המזהה של המסגרת החיצונית. מזהי המסגרות הם ייחודיים בכרטיסייה. -
frameTypeChrome מגרסה 106 ואילך
סוג המסגרת שבה הבקשה התרחשה.
-
הגורם היוזם
מחרוזת אופציונלי
Chrome 63 ואילךהמקור שממנו נשלחה הבקשה. ההגדרה הזו לא משתנה בהפניות אוטומטיות. אם המקור אטום, המערכת תשתמש במחרוזת "null".
-
method
מחרוזת
שיטת HTTP רגילה.
-
parentDocumentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של מסמך ההורה שהמסגרת הזו שייכת לו. השדה הזה לא מוגדר אם אין נכס ראשי.
-
parentFrameId
number
מזהה המסגרת שעוטפת את המסגרת ששלחה את הבקשה. אם אין מסגרת אב, הערך הוא -1.
-
requestId
מחרוזת
מזהה הבקשה. מזהי הבקשות הם ייחודיים לסשן בדפדפן. לכן, אפשר להשתמש בהם כדי לקשר בין אירועים שונים של אותה בקשה.
-
responseHeaders
HttpHeaders אופציונלי
כותרות התגובה של HTTP שהתקבלו עם התגובה הזו.
-
securityInfo
SecurityInfo אופציונלי
Chrome מגרסה 144 ואילךמידע על חיבור ה-TLS/QUIC שמשמש לחיבור הבסיסי. מוצג רק אם
securityInfoצוין בפרמטרextraInfoSpec. -
statusCode
number
Chrome 43 ואילךקוד סטטוס HTTP רגיל שהוחזר על ידי השרת.
-
statusLine
מחרוזת
שורת סטטוס HTTP של התגובה או המחרוזת "HTTP/0.9 200 OK" לתגובות HTTP/0.9 (כלומר, תגובות שאין בהן שורת סטטוס).
-
tabId
number
מזהה הכרטיסייה שבה מתבצעת הבקשה. הערך מוגדר כ-1- אם הבקשה לא קשורה לכרטיסייה.
-
timeStamp
number
הזמן שבו האות הזה מופעל, באלפיות השנייה מאז ראשית הזמן.
-
סוג
איך ייעשה שימוש במשאב המבוקש.
-
url
מחרוזת
-
-
החזרות
BlockingResponse | undefined
אם צוין "blocking" בפרמטר "extraInfoSpec", רכיב ה-event listener צריך להחזיר אובייקט מהסוג הזה.
-
-
סינון
-
extraInfoSpec
OnHeadersReceivedOptions[] optional
onResponseStarted
chrome.webRequest.onResponseStarted.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnResponseStartedOptions[],
)
מופעל כשמתקבל הבייט הראשון של גוף התגובה. בבקשות HTTP, המשמעות היא ששורת הסטטוס וכותרות התגובה זמינות.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
documentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של המסמך ששולח את הבקשה.
-
documentLifecycleChrome מגרסה 106 ואילך
מחזור החיים שבו נמצא המסמך.
-
frameId
number
הערך 0 מציין שהבקשה מתרחשת במסגרת הראשית. ערך חיובי מציין את המזהה של מסגרת משנה שבה הבקשה מתרחשת. אם המסמך של מסגרת (משנה) נטען (
typeהואmain_frameאוsub_frame),frameIdמציין את המזהה של המסגרת הזו, ולא את המזהה של המסגרת החיצונית. מזהי המסגרות הם ייחודיים בכרטיסייה. -
frameTypeChrome מגרסה 106 ואילך
סוג המסגרת שבה הבקשה התרחשה.
-
fromCache
בוליאני
מציין אם התשובה הזו אוחזרה ממטמון הדיסק.
-
הגורם היוזם
מחרוזת אופציונלי
Chrome 63 ואילךהמקור שממנו נשלחה הבקשה. ההגדרה הזו לא משתנה בהפניות אוטומטיות. אם המקור אטום, המערכת תשתמש במחרוזת "null".
-
ip
מחרוזת אופציונלי
כתובת ה-IP של השרת שאליו נשלחה הבקשה בפועל. שימו לב שהיא יכולה להיות כתובת IPv6 מילולית.
-
method
מחרוזת
שיטת HTTP רגילה.
-
parentDocumentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של מסמך ההורה שהמסגרת הזו שייכת לו. השדה הזה לא מוגדר אם אין נכס ראשי.
-
parentFrameId
number
מזהה המסגרת שעוטפת את המסגרת ששלחה את הבקשה. אם אין מסגרת אב, הערך הוא -1.
-
requestId
מחרוזת
מזהה הבקשה. מזהי הבקשות הם ייחודיים לסשן בדפדפן. לכן, אפשר להשתמש בהם כדי לקשר בין אירועים שונים של אותה בקשה.
-
responseHeaders
HttpHeaders אופציונלי
כותרות התגובה של HTTP שהתקבלו יחד עם התגובה הזו.
-
statusCode
number
קוד סטטוס HTTP רגיל שהוחזר על ידי השרת.
-
statusLine
מחרוזת
שורת סטטוס ה-HTTP של התגובה או המחרוזת "HTTP/0.9 200 OK" לתגובות HTTP/0.9 (כלומר, תגובות שאין בהן שורת סטטוס) או מחרוזת ריקה אם אין כותרות.
-
tabId
number
מזהה הכרטיסייה שבה מתבצעת הבקשה. הערך מוגדר כ-1- אם הבקשה לא קשורה לכרטיסייה.
-
timeStamp
number
הזמן שבו האות הזה מופעל, באלפיות השנייה מאז ראשית הזמן.
-
סוג
איך ייעשה שימוש במשאב המבוקש.
-
url
מחרוזת
-
-
-
סינון
-
extraInfoSpec
OnResponseStartedOptions[] optional
onSendHeaders
chrome.webRequest.onSendHeaders.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnSendHeadersOptions[],
)
מופעל רגע לפני שליחת בקשה לשרת (שינויים של קריאות חוזרות קודמות מסוג onBeforeSendHeaders גלויים עד להפעלת onSendHeaders).
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
documentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של המסמך ששולח את הבקשה.
-
documentLifecycleChrome מגרסה 106 ואילך
מחזור החיים שבו נמצא המסמך.
-
frameId
number
הערך 0 מציין שהבקשה מתרחשת במסגרת הראשית. ערך חיובי מציין את המזהה של מסגרת משנה שבה הבקשה מתרחשת. אם המסמך של מסגרת (משנה) נטען (
typeהואmain_frameאוsub_frame),frameIdמציין את המזהה של המסגרת הזו, ולא את המזהה של המסגרת החיצונית. מזהי המסגרות הם ייחודיים בכרטיסייה. -
frameTypeChrome מגרסה 106 ואילך
סוג המסגרת שבה הבקשה התרחשה.
-
הגורם היוזם
מחרוזת אופציונלי
Chrome 63 ואילךהמקור שממנו נשלחה הבקשה. ההגדרה הזו לא משתנה בהפניות אוטומטיות. אם המקור אטום, המערכת תשתמש במחרוזת "null".
-
method
מחרוזת
שיטת HTTP רגילה.
-
parentDocumentId
מחרוזת אופציונלי
Chrome מגרסה 106 ואילךה-UUID של מסמך ההורה שהמסגרת הזו שייכת לו. השדה הזה לא מוגדר אם אין נכס ראשי.
-
parentFrameId
number
מזהה המסגרת שעוטפת את המסגרת ששלחה את הבקשה. אם אין מסגרת אב, הערך הוא -1.
-
requestHeaders
HttpHeaders אופציונלי
הכותרות של בקשת ה-HTTP שנשלחו עם הבקשה הזו.
-
requestId
מחרוזת
מזהה הבקשה. מזהי הבקשות הם ייחודיים לסשן בדפדפן. לכן, אפשר להשתמש בהם כדי לקשר בין אירועים שונים של אותה בקשה.
-
tabId
number
מזהה הכרטיסייה שבה מתבצעת הבקשה. הערך מוגדר כ-1- אם הבקשה לא קשורה לכרטיסייה.
-
timeStamp
number
הזמן שבו האות הזה מופעל, באלפיות השנייה מאז ראשית הזמן.
-
סוג
איך ייעשה שימוש במשאב המבוקש.
-
url
מחרוזת
-
-
-
סינון
-
extraInfoSpec
OnSendHeadersOptions[] אופציונלי