توضیحات
توجه: این API منسوخ شده است. به جای آن، declarativeNetRequest API را بررسی کنید. از chrome.declarativeWebRequest API برای رهگیری، مسدود کردن یا تغییر درخواستها در حین ارسال استفاده کنید. این API به طور قابل توجهی سریعتر از chrome.webRequest API است زیرا میتوانید قوانینی را ثبت کنید که در مرورگر ارزیابی میشوند، نه در موتور جاوا اسکریپت، که این امر باعث کاهش تأخیر در رفت و برگشت و افزایش کارایی میشود.
مجوزها
declarativeWebRequestبرای استفاده از این API، باید مجوز "declarativeWebRequest" را به همراه مجوزهای میزبان ، در فایل مانیفست افزونه اعلام کنید.
{
"name": "My extension",
...
"permissions": [
"declarativeWebRequest",
"*://*/*"
],
...
}
در دسترس بودن
مانیفست
توجه داشته باشید که انواع خاصی از اقدامات غیر حساس نیازی به مجوزهای میزبان ندارند:
-
CancelRequest -
IgnoreRules -
RedirectToEmptyDocument -
RedirectToTransparentImage
اکشن SendMessageToExtension() برای هر میزبانی که درخواست شبکهاش برای ارسال پیام روی آن ارسال میشود، به مجوزهای میزبان نیاز دارد.
تمام اقدامات دیگر نیاز به مجوزهای میزبان برای همه URLها دارند.
به عنوان مثال، اگر "https://*.google.com/*" تنها مجوز میزبانی باشد که یک افزونه دارد، چنین افزونهای ممکن است قانونی را برای موارد زیر تنظیم کند:
- درخواست ارسال شده به
https://www.google.comیاhttps://anything.else.comرا لغو کنید. - ارسال پیام هنگام رفتن به
https://www.google.comاما نه هنگام رفتن بهhttps://something.else.com.
این افزونه نمیتواند قانونی برای هدایت https://www.google.com به https://mail.google.com تنظیم کند.
قوانین
API درخواست وب اعلانی (Declarative Web Request API) از مفاهیم API اعلانی (Declarative API) پیروی میکند. میتوانید قوانین را در شیء رویداد chrome.declarativeWebRequest.onRequest ثبت کنید.
API درخواست وب اعلانی از یک نوع معیار تطابق، یعنی RequestMatcher ، پشتیبانی میکند. RequestMatcher درخواستهای شبکه را تطبیق میدهد اگر و فقط اگر همه معیارهای ذکر شده رعایت شوند. RequestMatcher زیر با یک درخواست شبکه زمانی که کاربر https://www.example.com در omnibox وارد میکند، مطابقت میدهد:
var matcher = new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: 'example.com', schemes: ['http'] },
resourceType: ['main_frame']
});
درخواستهای ارسالی به آدرس https://www.example.com به دلیل این طرح توسط RequestMatcher رد میشدند. همچنین تمام درخواستهای مربوط به iframe تعبیهشده به دلیل resourceType رد میشدند.
برای لغو تمام درخواستها به "example.com"، میتوانید یک قانون به صورت زیر تعریف کنید:
var rule = {
conditions: [
new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: 'example.com' } })
],
actions: [
new chrome.declarativeWebRequest.CancelRequest()
]
};
برای لغو همه درخواستها به example.com و foobar.com ، میتوانید یک شرط دوم اضافه کنید، زیرا هر شرط برای شروع همه اقدامات مشخص شده کافی است:
var rule2 = {
conditions: [
new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: 'example.com' } }),
new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: 'foobar.com' } })
],
actions: [
new chrome.declarativeWebRequest.CancelRequest()
]
};
قوانین ثبت نام به شرح زیر است:
chrome.declarativeWebRequest.onRequest.addRules([rule2]);
ارزیابی شرایط و اقدامات
API درخواست وب اعلانی از مدل چرخه حیات برای درخواستهای وب API درخواست وب پیروی میکند. این بدان معناست که شرایط فقط در مراحل خاصی از یک درخواست وب قابل آزمایش هستند و به همین ترتیب، اقدامات نیز فقط در مراحل خاصی قابل اجرا هستند. جداول زیر مراحل درخواستی را که با شرایط و اقدامات سازگار هستند، فهرست میکنند.
| مراحل درخواست که طی آن ویژگیهای شرط میتوانند پردازش شوند. | ||||
|---|---|---|---|---|
| ویژگی شرط | درخواست قبل از | سربرگهای onBeforeSend | onHeadersReceived | onAuthRequired |
url | ✓ | ✓ | ✓ | ✓ |
resourceType | ✓ | ✓ | ✓ | ✓ |
contentType | ✓ | |||
excludeContentType | ✓ | |||
responseHeaders | ✓ | |||
excludeResponseHeaders | ✓ | |||
requestHeaders | ✓ | |||
excludeRequestHeaders | ✓ | |||
thirdPartyForCookies | ✓ | ✓ | ✓ | ✓ |
| مراحلی را درخواست کنید که طی آنها اقدامات میتوانند اجرا شوند. | ||||
| رویداد | درخواست قبل از | سربرگهای onBeforeSend | onHeadersReceived | onAuthRequired |
AddRequestCookie | ✓ | |||
AddResponseCookie | ✓ | |||
AddResponseHeader | ✓ | |||
CancelRequest | ✓ | ✓ | ✓ | ✓ |
EditRequestCookie | ✓ | |||
EditResponseCookie | ✓ | |||
IgnoreRules | ✓ | ✓ | ✓ | ✓ |
RedirectByRegEx | ✓ | ✓ | ||
RedirectRequest | ✓ | ✓ | ||
RedirectToEmptyDocument | ✓ | ✓ | ||
RedirectToTransparentImage | ✓ | ✓ | ||
RemoveRequestCookie | ✓ | |||
RemoveRequestHeader | ✓ | |||
RemoveResponseCookie | ✓ | |||
RemoveResponseHeader | ✓ | |||
SendMessageToExtension | ✓ | ✓ | ✓ | ✓ |
SetRequestHeader | ✓ | |||
استفاده از اولویتها برای لغو قوانین
قوانین میتوانند همانطور که در Events API توضیح داده شده است، با اولویتها مرتبط شوند. این مکانیزم میتواند برای بیان استثنائات استفاده شود. مثال زیر تمام درخواستها به تصاویری با نام evil.jpg را به جز در سرور "myserver.com" مسدود میکند.
var rule1 = {
priority: 100,
conditions: [
new chrome.declarativeWebRequest.RequestMatcher({
url: { pathEquals: 'evil.jpg' } })
],
actions: [
new chrome.declarativeWebRequest.CancelRequest()
]
};
var rule2 = {
priority: 1000,
conditions: [
new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: '.myserver.com' } })
],
actions: [
new chrome.declarativeWebRequest.IgnoreRules({
lowerPriorityThan: 1000 })
]
};
chrome.declarativeWebRequest.onRequest.addRules([rule1, rule2]);
مهم است که تشخیص دهیم که عمل IgnoreRules در مراحل مختلف درخواست اعمال نمیشود. تمام شرایط مربوط به تمام قوانین در هر مرحله از یک درخواست وب ارزیابی میشوند. اگر یک عمل IgnoreRules اجرا شود، فقط برای سایر اقداماتی که برای همان درخواست وب در همان مرحله اجرا میشوند، اعمال میشود.
انواع
AddRequestCookie
یک کوکی به درخواست اضافه میکند یا در صورتی که کوکی دیگری با همین نام از قبل وجود داشته باشد، آن را لغو میکند. توجه داشته باشید که ترجیح داده میشود از API کوکیها استفاده شود زیرا از نظر محاسباتی ارزانتر است.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: AddRequestCookie) => {...}
- بازده
- کوکی
کوکی که قرار است به درخواست اضافه شود. هیچ فیلدی نمیتواند تعریف نشده باشد.
AddResponseCookie
یک کوکی به پاسخ اضافه میکند یا در صورتی که کوکی دیگری با همین نام از قبل وجود داشته باشد، آن را لغو میکند. توجه داشته باشید که ترجیح داده میشود از API کوکیها استفاده شود زیرا از نظر محاسباتی ارزانتر است.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: AddResponseCookie) => {...}
- بازده
- کوکی
کوکی که قرار است به پاسخ اضافه شود. نام و مقدار آن باید مشخص شود.
AddResponseHeader
هدر پاسخ را به پاسخ این درخواست وب اضافه میکند. از آنجایی که ممکن است چندین هدر پاسخ نام یکسانی داشته باشند، برای جایگزینی آنها ابتدا باید هدر پاسخ جدیدی را حذف و سپس اضافه کنید.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: AddResponseHeader) => {...}
- ارگ
- بازده
- نام
رشته
نام هدر پاسخ HTTP.
- ارزش
رشته
مقدار هدر پاسخ HTTP.
CancelRequest
رویداد اعلانی که درخواست شبکه را لغو میکند.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: CancelRequest) => {...}
- ارگ
- بازده
EditRequestCookie
یک یا چند کوکی درخواستی را ویرایش میکند. توجه داشته باشید که ترجیحاً از API کوکیها استفاده میشود زیرا از نظر محاسباتی کمهزینهتر است.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: EditRequestCookie) => {...}
- بازده
- فیلتر
فیلتر برای کوکیهایی که قرار است تغییر کنند. تمام ورودیهای خالی نادیده گرفته میشوند.
- اصلاح
ویژگیهایی که باید در کوکیهایی که فیلتر را دستکاری کردهاند، لغو شوند. ویژگیهایی که روی یک رشته خالی تنظیم شدهاند، حذف میشوند.
EditResponseCookie
یک یا چند کوکی از پاسخ را ویرایش میکند. توجه داشته باشید که ترجیح داده میشود از API کوکیها استفاده شود زیرا از نظر محاسباتی ارزانتر است.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: EditResponseCookie) => {...}
- ارگ
- بازده
- فیلتر
فیلتر برای کوکیهایی که قرار است تغییر کنند. تمام ورودیهای خالی نادیده گرفته میشوند.
- اصلاح
ویژگیهایی که باید در کوکیهایی که فیلتر را دستکاری کردهاند، لغو شوند. ویژگیهایی که روی یک رشته خالی تنظیم شدهاند، حذف میشوند.
FilterResponseCookie
فیلتر کردن کوکی در پاسخهای HTTP.
خواص
- سنLowerBound
شماره اختیاری
حد پایین فراگیر برای طول عمر کوکی (که بر حسب ثانیه پس از زمان فعلی مشخص میشود). فقط کوکیهایی که تاریخ-زمان انقضای آنها روی 'now + ageLowerBound' یا بعداً تنظیم شده باشد، این معیار را برآورده میکنند. کوکیهای جلسهای معیار این فیلتر را برآورده نمیکنند. طول عمر کوکی از ویژگیهای کوکی 'max-age' یا 'expires' محاسبه میشود. اگر هر دو مشخص شده باشند، از 'max-age' برای محاسبه طول عمر کوکی استفاده میشود.
- سنبالا
شماره اختیاری
حد بالای فراگیر برای طول عمر کوکی (که بر حسب ثانیه پس از زمان فعلی مشخص میشود). فقط کوکیهایی که تاریخ-زمان انقضای آنها در بازه [now, now + ageUpperBound] باشد، این معیار را برآورده میکنند. کوکیهای جلسهای و کوکیهایی که تاریخ-زمان انقضای آنها در گذشته است، معیار این فیلتر را برآورده نمیکنند. طول عمر کوکی از ویژگیهای کوکی 'max-age' یا 'expires' محاسبه میشود. اگر هر دو مشخص شده باشند، از 'max-age' برای محاسبه طول عمر کوکی استفاده میشود.
- دامنه
رشته اختیاری
مقدار ویژگی کوکی دامنه.
- منقضی میشود
رشته اختیاری
مقدار ویژگی کوکی منقضی میشود.
- فقط http
رشته اختیاری
وجود ویژگی کوکی HttpOnly.
- حداکثر سن
شماره اختیاری
مقدار ویژگی کوکی Max-Age
- نام
رشته اختیاری
نام یک کوکی.
- مسیر
رشته اختیاری
مقدار ویژگی کوکی مسیر.
- امن
رشته اختیاری
وجود ویژگی کوکی امن.
- کوکی جلسه
بولی اختیاری
کوکیهای جلسه را فیلتر میکند. کوکیهای جلسه هیچ طول عمری ندارند که در هیچ یک از ویژگیهای «max-age» یا «expires» مشخص شده باشد.
- ارزش
رشته اختیاری
مقدار یک کوکی، میتواند داخل علامت نقل قول دوتایی قرار گیرد.
HeaderFilter
فیلترها برای معیارهای مختلف، هدر درخواست میکنند. معیارهای چندگانه به عنوان یک پیوستگی ارزیابی میشوند.
خواص
- نامحاوی
رشته | رشته[] اختیاری
در صورتی که نام هدر شامل تمام رشتههای مشخص شده باشد، تطبیق مییابد.
- نامبرابرها
رشته اختیاری
در صورتی که نام هدر برابر با رشتهی مشخص شده باشد، تطبیق مییابد.
- پیشوند نام
رشته اختیاری
در صورتی که نام هدر با رشتهی مشخص شده شروع شود، تطبیق مییابد.
- پسوند نام
رشته اختیاری
در صورتی که نام هدر با رشتهی مشخص شده خاتمه یابد، تطبیق مییابد.
- مقدار شامل میشود
رشته | رشته[] اختیاری
در صورتی تطبیق مییابد که مقدار هدر شامل تمام رشتههای مشخص شده باشد.
- ارزش برابر است
رشته اختیاری
در صورتی که مقدار هدر برابر با رشتهی مشخص شده باشد، تطبیق مییابد.
- پیشوند مقدار
رشته اختیاری
اگر مقدار هدر با رشتهی مشخص شده شروع شود، تطبیق مییابد.
- پسوند مقدار
رشته اختیاری
در صورتی که مقدار هدر با رشتهی مشخص شده خاتمه یابد، تطبیق مییابد.
IgnoreRules
تمام قوانینی را که با معیارهای مشخص شده مطابقت دارند، میپوشاند.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: IgnoreRules) => {...}
- بازده
- hasTag
رشته اختیاری
در صورت تنظیم، قوانینی با برچسب مشخص شده نادیده گرفته میشوند. این نادیده گرفتن ادامه نمییابد، بلکه فقط بر قوانین و اقدامات آنها در همان مرحله درخواست شبکه تأثیر میگذارد. توجه داشته باشید که قوانین به ترتیب نزولی اولویتهایشان اجرا میشوند. این اقدام بر قوانینی با اولویت پایینتر از قانون فعلی تأثیر میگذارد. قوانینی با اولویت یکسان ممکن است نادیده گرفته شوند یا نشوند.
- اولویت پایینتر از
شماره اختیاری
در صورت تنظیم، قوانینی با اولویت پایینتر از مقدار مشخصشده نادیده گرفته میشوند. این مرز حفظ نمیشود و فقط بر قوانین و اقدامات آنها در همان مرحله درخواست شبکه تأثیر میگذارد.
RedirectByRegEx
با اعمال یک عبارت منظم روی URL، یک درخواست را تغییر مسیر میدهد. عبارات منظم از سینتکس RE2 استفاده میکنند.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: RedirectByRegEx) => {...}
- بازده
- از
رشته
یک الگوی تطابق که ممکن است شامل گروههای ضبط باشد. گروههای ضبط به جای استفاده از سینتکس RE2 (\1، \2، ...) در پرل ($1، $2، ...) ارجاع داده میشوند تا به عبارات منظم جاوا اسکریپت نزدیکتر باشند.
- به
رشته
الگوی مقصد.
RedirectRequest
رویداد اعلانی که درخواست شبکه را تغییر مسیر میدهد.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: RedirectRequest) => {...}
- بازده
- تغییر مسیر
رشته
مقصدی که درخواست به آنجا هدایت میشود.
RedirectToEmptyDocument
رویداد اعلانی که درخواست شبکه را به یک سند خالی هدایت میکند.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: RedirectToEmptyDocument) => {...}
- بازده
RedirectToTransparentImage
یک رویداد اعلانی که درخواست شبکه را به یک تصویر شفاف هدایت میکند.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: RedirectToTransparentImage) => {...}
- بازده
RemoveRequestCookie
یک یا چند کوکی درخواستی را حذف میکند. توجه داشته باشید که ترجیح داده میشود از API کوکیها استفاده شود زیرا از نظر محاسباتی ارزانتر است.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: RemoveRequestCookie) => {...}
- ارگ
- بازده
- فیلتر
کوکیهایی که حذف خواهند شد را فیلتر کنید. تمام ورودیهای خالی نادیده گرفته میشوند.
RemoveRequestHeader
هدر درخواست با نام مشخص شده را حذف میکند. از SetRequestHeader و RemoveRequestHeader با نام هدر یکسان برای یک درخواست استفاده نکنید. هر نام هدر درخواست فقط یک بار در هر درخواست رخ میدهد.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: RemoveRequestHeader) => {...}
- ارگ
- بازده
- نام
رشته
نام هدر درخواست HTTP (غیرحساس به حروف بزرگ و کوچک).
RemoveResponseCookie
یک یا چند کوکی از پاسخ را حذف میکند. توجه داشته باشید که ترجیح داده میشود از API کوکیها استفاده شود زیرا از نظر محاسباتی ارزانتر است.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: RemoveResponseCookie) => {...}
- ارگ
- بازده
- فیلتر
کوکیهایی که حذف خواهند شد را فیلتر کنید. تمام ورودیهای خالی نادیده گرفته میشوند.
RemoveResponseHeader
تمام هدرهای پاسخ با نامها و مقادیر مشخص شده را حذف میکند.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: RemoveResponseHeader) => {...}
- ارگ
- بازده
- نام
رشته
نام هدر درخواست HTTP (غیرحساس به حروف بزرگ و کوچک).
- ارزش
رشته اختیاری
مقدار هدر درخواست HTTP (غیر حساس به حروف بزرگ و کوچک).
RequestCookie
فیلتر یا مشخصات یک کوکی در درخواستهای HTTP.
خواص
- نام
رشته اختیاری
نام یک کوکی.
- ارزش
رشته اختیاری
مقدار یک کوکی، میتواند داخل علامت نقل قول دوتایی قرار گیرد.
RequestMatcher
رویدادهای شبکه را با معیارهای مختلف تطبیق میدهد.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: RequestMatcher) => {...}
- ارگ
- بازده
- نوع محتوا
رشته[] اختیاری
اگر نوع رسانه MIME پاسخ (از هدر HTTP Content-Type) در لیست موجود باشد، تطبیق مییابد.
- نوع محتوا را حذف کنید
رشته[] اختیاری
در صورتی تطبیق مییابد که نوع رسانه MIME پاسخ (از سرآیند HTTP Content-Type) در لیست موجود نباشد .
- هدرهای درخواست را حذف کنید
فیلتر سرصفحه [] اختیاری
در صورتی که هیچ یک از هدرهای درخواست با هیچ یک از HeaderFilters مطابقت نداشته باشد، تطبیق مییابد.
- هدرهای پاسخ را حذف کنید
فیلتر سرصفحه [] اختیاری
در صورتی که هیچ یک از هدرهای پاسخ با هیچ یک از فیلترهای هدر مطابقت نداشته باشد، مطابقت دارد.
- آدرس اینترنتی firstPartyForCookies
فیلتر آدرس (اختیاری)
منسوخ شدهاز زمان انتشار ۸۲ نادیده گرفته شده است.
در صورتی که شرایط UrlFilter برای URL «first party» درخواست برقرار باشد، مطابقت دارد. URL «first party» یک درخواست، در صورت وجود، میتواند با URL هدف درخواست متفاوت باشد و آنچه را که برای بررسیهای شخص ثالث برای کوکیها «first party» در نظر گرفته میشود، توصیف میکند.
- درخواستها
فیلتر سرصفحه [] اختیاری
اگر برخی از هدرهای درخواست با یکی از HeaderFilters مطابقت داشته باشند، تطبیق مییابد.
- نوع منبع
نوع منبع [] اختیاری
اگر نوع درخواست در لیست موجود باشد، مطابقت دارد. درخواستهایی که نمیتوانند با هیچ یک از انواع مطابقت داشته باشند، فیلتر میشوند.
- هدرهای پاسخ
فیلتر سرصفحه [] اختیاری
اگر برخی از هدرهای پاسخ با یکی از HeaderFilters مطابقت داشته باشند، مطابقت دارد.
- مراحل
مرحله [] اختیاری
شامل فهرستی از رشتهها است که مراحل را توصیف میکنند. مقادیر مجاز عبارتند از 'onBeforeRequest'، 'onBeforeSendHeaders'، 'onHeadersReceived'، 'onAuthRequired'. اگر این ویژگی وجود داشته باشد، مراحل قابل اجرا را به موارد ذکر شده محدود میکند. توجه داشته باشید که کل شرط فقط در مراحلی که با همه ویژگیها سازگار هستند، قابل اجرا است.
- thirdPartyForCookies
بولی اختیاری
منسوخ شدهاز زمان انتشار ۸۷ نادیده گرفته شده است.
اگر روی true تنظیم شود، با درخواستهایی که تابع سیاستهای کوکی شخص ثالث هستند مطابقت دارد. اگر روی false تنظیم شود، با تمام درخواستهای دیگر مطابقت دارد.
- آدرس اینترنتی
فیلتر آدرس (اختیاری)
در صورتی که شرایط UrlFilter برای URL درخواست برقرار باشد، تطبیق مییابد.
ResponseCookie
مشخصات یک کوکی در پاسخهای HTTP.
خواص
- دامنه
رشته اختیاری
مقدار ویژگی کوکی دامنه.
- منقضی میشود
رشته اختیاری
مقدار ویژگی کوکی منقضی میشود.
- فقط http
رشته اختیاری
وجود ویژگی کوکی HttpOnly.
- حداکثر سن
شماره اختیاری
مقدار ویژگی کوکی Max-Age
- نام
رشته اختیاری
نام یک کوکی.
- مسیر
رشته اختیاری
مقدار ویژگی کوکی مسیر.
- امن
رشته اختیاری
وجود ویژگی کوکی امن.
- ارزش
رشته اختیاری
مقدار یک کوکی، میتواند داخل علامت نقل قول دوتایی قرار گیرد.
SendMessageToExtension
رویداد declarativeWebRequest.onMessage را فعال میکند.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: SendMessageToExtension) => {...}
- بازده
- پیام
رشته
مقداری که در ویژگی
messageدیکشنری که به کنترلکننده رویداد ارسال میشود، ارسال خواهد شد.
SetRequestHeader
هدر درخواست با نام مشخص شده را روی مقدار مشخص شده تنظیم میکند. اگر هدری با نام مشخص شده قبلاً وجود نداشته باشد، یک هدر جدید ایجاد میشود. مقایسه نام هدر همیشه به حروف کوچک و بزرگ حساس نیست. هر نام هدر درخواست فقط یک بار در هر درخواست رخ میدهد.
خواص
- سازنده
باطل
تابع
constructorبه شکل زیر است:(arg: SetRequestHeader) => {...}
- بازده
- نام
رشته
نام هدر درخواست HTTP.
- ارزش
رشته
مقدار هدر درخواست HTTP.
Stage
شمارشی
"قبل از درخواست" "هدرهای ارسال قبل از ارسال" "روی هدرهای دریافتی" "onAuthRequired"
رویدادها
onMessage
chrome.declarativeWebRequest.onMessage.addListener(
callback: function,
)
زمانی اجرا میشود که پیامی از طریق declarativeWebRequest.SendMessageToExtension از یک اکشن مربوط به API درخواست وب declarative ارسال شود.
پارامترها
- تماس برگشتی
تابع
پارامتر
callbackبه شکل زیر است:(details: object) => void
- جزئیات
شیء
- شناسه سند
رشته اختیاری
شناسه کاربری (UUID) سندی که درخواست را ارسال کرده است.
- چرخه عمر سند
چرخه عمری که سند در آن قرار دارد.
- شناسه قاب
شماره
مقدار ۰ نشان میدهد که درخواست در فریم اصلی اتفاق میافتد؛ مقدار مثبت نشان دهنده شناسه یک زیرفریم است که درخواست در آن اتفاق میافتد. اگر سند یک (زیرفریم) بارگذاری شود (
typeآنmain_frameیاsub_frameباشد)،frameIdشناسه این فریم را نشان میدهد، نه شناسه فریم بیرونی. شناسههای فریم در یک تب منحصر به فرد هستند. - نوع قاب
نوع فریمی که پیمایش در آن رخ داده است.
- پیام
رشته
پیامی که توسط اسکریپت فراخوانی ارسال میشود.
- روش
رشته
روش استاندارد HTTP.
- شناسه سند والد
رشته اختیاری
یک UUID از سند والد که مالک این فریم است. اگر والد وجود نداشته باشد، این مقدار تنظیم نمیشود.
- شناسه والدفریم
شماره
شناسه فریمی که فریمی که درخواست را ارسال کرده است را در بر میگیرد. اگر فریم والدی وجود نداشته باشد، روی -۱ تنظیم میشود.
- شناسه درخواست
رشته
شناسه درخواست. شناسههای درخواست در یک جلسه مرورگر منحصر به فرد هستند. در نتیجه، میتوان از آنها برای مرتبط کردن رویدادهای مختلف یک درخواست استفاده کرد.
- مرحله
مرحلهای از درخواست شبکه که در طی آن رویداد فعال شده است.
- شناسه برگه
شماره
شناسهی برگهای که درخواست در آن انجام میشود. اگر درخواست مربوط به برگهای نباشد، روی -۱ تنظیم کنید.
- مهر زمانی
شماره
زمانی که این سیگنال از زمان آغاز به کار خود، بر حسب میلیثانیه، فعال میشود.
نحوه استفاده از منبع درخواستی.
- آدرس اینترنتی
رشته
onRequest
API رویداد اعلانی (Declarative Event API) متشکل از addRules ، removeRules و getRules را ارائه میدهد.