chrome.declarativeWebRequest

توضیحات

توجه: این API منسوخ شده است. به جای آن، declarativeNetRequest API را بررسی کنید. از chrome.declarativeWebRequest API برای رهگیری، مسدود کردن یا تغییر درخواست‌ها در حین ارسال استفاده کنید. این API به طور قابل توجهی سریع‌تر از chrome.webRequest API است زیرا می‌توانید قوانینی را ثبت کنید که در مرورگر ارزیابی می‌شوند، نه در موتور جاوا اسکریپت، که این امر باعث کاهش تأخیر در رفت و برگشت و افزایش کارایی می‌شود.

مجوزها

declarativeWebRequest

برای استفاده از این API، باید مجوز "declarativeWebRequest" را به همراه مجوزهای میزبان ، در فایل مانیفست افزونه اعلام کنید.

{
  "name": "My extension",
  ...
  "permissions": [
    "declarativeWebRequest",
    "*://*/*"
  ],
  ...
}

در دسترس بودن

کانال بتا ≤ MV2

مانیفست

توجه داشته باشید که انواع خاصی از اقدامات غیر حساس نیازی به مجوزهای میزبان ندارند:

  • 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 کوکی‌ها استفاده شود زیرا از نظر محاسباتی ارزان‌تر است.

خواص

AddResponseCookie

یک کوکی به پاسخ اضافه می‌کند یا در صورتی که کوکی دیگری با همین نام از قبل وجود داشته باشد، آن را لغو می‌کند. توجه داشته باشید که ترجیح داده می‌شود از API کوکی‌ها استفاده شود زیرا از نظر محاسباتی ارزان‌تر است.

خواص

AddResponseHeader

هدر پاسخ را به پاسخ این درخواست وب اضافه می‌کند. از آنجایی که ممکن است چندین هدر پاسخ نام یکسانی داشته باشند، برای جایگزینی آنها ابتدا باید هدر پاسخ جدیدی را حذف و سپس اضافه کنید.

خواص

CancelRequest

رویداد اعلانی که درخواست شبکه را لغو می‌کند.

خواص

EditRequestCookie

یک یا چند کوکی درخواستی را ویرایش می‌کند. توجه داشته باشید که ترجیحاً از API کوکی‌ها استفاده می‌شود زیرا از نظر محاسباتی کم‌هزینه‌تر است.

خواص

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

رویداد اعلانی که درخواست شبکه را تغییر مسیر می‌دهد.

خواص

RedirectToEmptyDocument

رویداد اعلانی که درخواست شبکه را به یک سند خالی هدایت می‌کند.

خواص

RedirectToTransparentImage

یک رویداد اعلانی که درخواست شبکه را به یک تصویر شفاف هدایت می‌کند.

خواص

RemoveRequestCookie

یک یا چند کوکی درخواستی را حذف می‌کند. توجه داشته باشید که ترجیح داده می‌شود از API کوکی‌ها استفاده شود زیرا از نظر محاسباتی ارزان‌تر است.

خواص

RemoveRequestHeader

هدر درخواست با نام مشخص شده را حذف می‌کند. از SetRequestHeader و RemoveRequestHeader با نام هدر یکسان برای یک درخواست استفاده نکنید. هر نام هدر درخواست فقط یک بار در هر درخواست رخ می‌دهد.

خواص

RemoveResponseCookie

یک یا چند کوکی از پاسخ را حذف می‌کند. توجه داشته باشید که ترجیح داده می‌شود از API کوکی‌ها استفاده شود زیرا از نظر محاسباتی ارزان‌تر است.

خواص

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 را فعال می‌کند.

خواص

SetRequestHeader

هدر درخواست با نام مشخص شده را روی مقدار مشخص شده تنظیم می‌کند. اگر هدری با نام مشخص شده قبلاً وجود نداشته باشد، یک هدر جدید ایجاد می‌شود. مقایسه نام هدر همیشه به حروف کوچک و بزرگ حساس نیست. هر نام هدر درخواست فقط یک بار در هر درخواست رخ می‌دهد.

خواص

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 را ارائه می‌دهد.