chrome.declarativeWebRequest

refresh date: 2026-09-25 robots: noindex

الوصف

ملاحظة: تم إيقاف واجهة برمجة التطبيقات هذه نهائيًا. يمكنك الاطّلاع على واجهة برمجة التطبيقات declarativeNetRequest بدلاً من ذلك. استخدِم واجهة برمجة التطبيقات chrome.declarativeWebRequest لاعتراض الطلبات أو حظرها أو تعديلها أثناء نقلها. وهي أسرع بكثير من واجهة برمجة التطبيقات chrome.webRequest لأنّه يمكنك تسجيل قواعد يتم تقييمها في المتصفّح بدلاً من محرّك JavaScript، ما يقلّل من أوقات الاستجابة ويسمح بتحقيق كفاءة أعلى.

الأذونات

declarativeWebRequest

يجب الإفصاح عن إذن "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.

القواعد

تتّبع واجهة Declarative Web Request API مفاهيم Declarative API. يمكنك تسجيل قواعد في عنصر الحدث chrome.declarativeWebRequest.onRequest.

تتيح واجهة برمجة التطبيقات Declarative Web Request نوعًا واحدًا من معايير المطابقة، وهو RequestMatcher. يطابق RequestMatcher طلبات الشبكة إذا تم استيفاء جميع المعايير المدرَجة فقط. ستتطابق RequestMatcher التالية مع طلب شبكة عندما يُدخل المستخدم https://www.example.com في شريط العناوين:

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]);

تقييم الشروط والإجراءات

تتّبع واجهة Declarative Web Request API نموذج دورة الحياة لطلبات الويب الخاص بواجهة Web Request API. وهذا يعني أنّه لا يمكن اختبار الشروط إلا في مراحل معيّنة من طلب الويب، وبالمثل، لا يمكن تنفيذ الإجراءات إلا في مراحل معيّنة. تعرض الجداول التالية مراحل الطلب المتوافقة مع الشروط والإجراءات.

مراحل الطلب التي يمكن خلالها معالجة سمات الحالة
سمة الشرط onBeforeRequest onBeforeSendHeaders onHeadersReceived onAuthRequired
url ✓ ✓ ✓ ✓
resourceType ✓ ✓ ✓ ✓
contentType ✓
excludeContentType ✓
responseHeaders ✓
excludeResponseHeaders ✓
requestHeaders ✓
excludeRequestHeaders ✓
thirdPartyForCookies ✓ ✓ ✓ ✓
مراحل الطلب التي يمكن خلالها تنفيذ الإجراءات
الحدث onBeforeRequest onBeforeSendHeaders 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

تضيف هذه السمة ملف تعريف ارتباط إلى الطلب أو تتجاوز ملف تعريف ارتباط، في حال توفّر ملف تعريف ارتباط آخر بالاسم نفسه. يُرجى العِلم أنّه من الأفضل استخدام Cookies API لأنّها أقل تكلفة من الناحية الحسابية.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: AddRequestCookie) => {...}

  • ملف تعريف الارتباط الذي ستتم إضافته إلى الطلب يجب ألا يكون أي حقل غير محدّد.

AddResponseCookie

تضيف هذه السمة ملف تعريف ارتباط إلى الردّ أو تتجاوز ملف تعريف ارتباط، في حال توفّر ملف تعريف ارتباط آخر بالاسم نفسه. يُرجى العِلم أنّه من الأفضل استخدام Cookies API لأنّها أقل تكلفة من الناحية الحسابية.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: AddResponseCookie) => {...}

  • ملف تعريف الارتباط الذي ستتم إضافته إلى الردّ يجب تحديد الاسم والقيمة.

AddResponseHeader

تضيف عنوان الاستجابة إلى استجابة طلب الويب هذا. بما أنّ عناوين الاستجابات المتعددة قد تشترك في الاسم نفسه، عليك أولاً إزالة عنوان الاستجابة ثم إضافة عنوان استجابة جديد من أجل استبدال عنوان الاستجابة الحالي.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: AddResponseHeader) => {...}

  • الاسم

    سلسلة

    اسم عنوان استجابة HTTP

  • القيمة

    سلسلة

    قيمة عنوان استجابة HTTP

CancelRequest

إجراء حدث تعريفي يلغي طلب شبكة.

الخصائص

EditRequestCookie

تعديل ملفات تعريف ارتباط الطلب يُرجى العِلم أنّه من الأفضل استخدام Cookies API لأنّها أقل تكلفة من الناحية الحسابية.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: EditRequestCookie) => {...}

  • تصفية

    فلترة ملفات تعريف الارتباط التي سيتم تعديلها ويتم تجاهل جميع الإدخالات الفارغة.

  • تعديل

    السمات التي سيتم تجاهلها في ملفات تعريف الارتباط التي تطابقت مع الفلتر. تتم إزالة السمات التي تم ضبطها على سلسلة فارغة.

EditResponseCookie

تعديل ملف تعريف ارتباط واحد أو أكثر من ملفات تعريف الارتباط الخاصة بالاستجابة يُرجى العِلم أنّه من الأفضل استخدام Cookies API لأنّها أقل تكلفة من الناحية الحسابية.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: EditResponseCookie) => {...}

  • فلترة ملفات تعريف الارتباط التي سيتم تعديلها ويتم تجاهل جميع الإدخالات الفارغة.

  • تعديل

    السمات التي سيتم تجاهلها في ملفات تعريف الارتباط التي تطابقت مع الفلتر. تتم إزالة السمات التي تم ضبطها على سلسلة فارغة.

FilterResponseCookie

فلتر لملف تعريف الارتباط في استجابات HTTP

الخصائص

  • ageLowerBound

    number اختياري

    الحدّ الأدنى الشامل لمدة صلاحية ملف تعريف الارتباط (يتم تحديده بالثواني بعد الوقت الحالي). لا تستوفي هذا المعيار سوى ملفات تعريف الارتباط التي تم ضبط تاريخ ووقت انتهاء صلاحيتها على "الآن + ageLowerBound" أو بعد ذلك. لا تستوفي ملفات تعريف الارتباط الخاصة بالجلسة معيار هذا الفلتر. يتم احتساب مدة صلاحية ملف تعريف الارتباط من سمات ملف تعريف الارتباط "max-age" أو "expires". في حال تحديد كليهما، يتم استخدام max-age لاحتساب مدة بقاء ملف تعريف الارتباط.

  • ageUpperBound

    number اختياري

    الحدّ الأعلى الشامل لمدة صلاحية ملف تعريف الارتباط (يتم تحديده بالثواني بعد الوقت الحالي). لا تستوفي هذا المعيار سوى ملفات تعريف الارتباط التي يقع تاريخ انتهاء صلاحيتها في الفترة الزمنية [الآن، الآن + ageUpperBound]. لا تستوفي ملفات تعريف الارتباط الخاصة بالجلسة وتلك التي انتهت صلاحيتها معيار هذا الفلتر. يتم احتساب مدة صلاحية ملف تعريف الارتباط من سمات ملف تعريف الارتباط "max-age" أو "expires". في حال تحديد كليهما، يتم استخدام max-age لاحتساب مدة بقاء ملف تعريف الارتباط.

  • نطاق

    سلسلة اختيارية

    قيمة سمة ملف تعريف الارتباط "النطاق"

  • expires

    سلسلة اختيارية

    قيمة سمة ملف تعريف الارتباط Expires

  • httpOnly

    سلسلة اختيارية

    وجود سمة ملف تعريف الارتباط HttpOnly

  • maxAge

    number اختياري

    قيمة سمة ملف تعريف الارتباط Max-Age

  • الاسم

    سلسلة اختيارية

    اسم ملف تعريف الارتباط

  • المسار

    سلسلة اختيارية

    قيمة سمة ملف تعريف الارتباط "المسار"

  • آمن

    سلسلة اختيارية

    وجود سمة ملف تعريف الارتباط الآمن

  • sessionCookie

    boolean اختياري

    تتم فلترة ملفات تعريف الارتباط للجلسة. لا تحتوي ملفات تعريف الارتباط الخاصة بالجلسة على أي مدة محددة في أي من السمتَين "max-age" أو "expires".

  • القيمة

    سلسلة اختيارية

    قيمة ملف تعريف الارتباط، وقد تكون محاطة بعلامتَي اقتباس مزدوجتَين.

HeaderFilter

تتم فلترة عناوين الطلبات وفقًا لمعايير مختلفة. يتم تقييم المعايير المتعددة كاقتران.

الخصائص

  • nameContains

    string | string[] اختياري

    تتم المطابقة إذا كان اسم العنوان يحتوي على جميع السلاسل المحدّدة.

  • nameEquals

    سلسلة اختيارية

    تحدث مطابقة إذا كان اسم العنوان يساوي السلسلة المحدّدة.

  • namePrefix

    سلسلة اختيارية

    تتم المطابقة إذا بدأ اسم العنوان بالسلسلة المحدّدة.

  • nameSuffix

    سلسلة اختيارية

    تحدث مطابقة إذا كان اسم العنوان ينتهي بالسلسلة المحدّدة.

  • valueContains

    string | string[] اختياري

    تتم المطابقة إذا كانت قيمة العنوان تحتوي على جميع السلاسل المحدّدة.

  • valueEquals

    سلسلة اختيارية

    تتم المطابقة إذا كانت قيمة العنوان تساوي السلسلة المحدّدة.

  • valuePrefix

    سلسلة اختيارية

    تتم المطابقة إذا بدأت قيمة العنوان بالسلسلة المحدّدة.

  • valueSuffix

    سلسلة اختيارية

    تتم المطابقة إذا كانت قيمة العنوان تنتهي بالسلسلة المحدّدة.

IgnoreRules

إخفاء جميع القواعد التي تتطابق مع المعايير المحدّدة

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: IgnoreRules) => {...}

  • hasTag

    سلسلة اختيارية

    في حال ضبط هذه السمة، يتم تجاهل القواعد التي تتضمّن العلامة المحدّدة. لا يتم الاحتفاظ بهذا التجاهل، بل يؤثر فقط في القواعد والإجراءات في مرحلة طلب الشبكة نفسها. يُرجى العِلم أنّه يتم تنفيذ القواعد بترتيب تنازلي حسب أولوياتها. يؤثّر هذا الإجراء في القواعد ذات الأولوية الأقل من القاعدة الحالية. قد يتم تجاهل القواعد التي لها الأولوية نفسها أو لا يتم تجاهلها.

  • lowerPriorityThan

    number اختياري

    في حال ضبط هذه السمة، يتم تجاهل القواعد ذات الأولوية الأقل من القيمة المحدّدة. لا يتم الاحتفاظ بهذا الحدّ، بل يؤثّر فقط في القواعد والإجراءات التي تتّخذها في مرحلة طلب الشبكة نفسها.

RedirectByRegEx

تعيد توجيه الطلب من خلال تطبيق تعبير عادي على عنوان URL. تستخدم التعبيرات العادية بنية RE2.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: RedirectByRegEx) => {...}

  • من

    سلسلة

    نمط مطابق قد يحتوي على مجموعات الالتقاط يتم الرجوع إلى مجموعات الالتقاط في بنية Perl ($1 و$2 وما إلى ذلك) بدلاً من بنية RE2 (\1 و\2 وما إلى ذلك) لتكون أقرب إلى التعبيرات العادية في JavaScript.

  • إلى

    سلسلة

    نمط الوجهة

RedirectRequest

إجراء الحدث التعريفي الذي يعيد توجيه طلب شبكة.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: RedirectRequest) => {...}

  • redirectUrl

    سلسلة

    الوجهة التي تتم إعادة توجيه الطلب إليها

RedirectToEmptyDocument

إجراء حدث تعريفي يعيد توجيه طلب شبكة إلى مستند فارغ.

الخصائص

RedirectToTransparentImage

إجراء حدث تعريفي يعيد توجيه طلب شبكة إلى صورة شفافة.

الخصائص

RemoveRequestCookie

يزيل ملفات تعريف ارتباط واحدة أو أكثر من الطلب. يُرجى العِلم أنّه من الأفضل استخدام Cookies API لأنّها أقل تكلفة من الناحية الحسابية.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: RemoveRequestCookie) => {...}

  • تصفية

    فلترة ملفات تعريف الارتباط التي ستتم إزالتها ويتم تجاهل جميع الإدخالات الفارغة.

RemoveRequestHeader

يزيل عنوان الطلب الذي يحمل الاسم المحدّد. لا تستخدِم SetRequestHeader وRemoveRequestHeader مع اسم العنوان نفسه في الطلب نفسه. يظهر اسم عنوان الطلب مرة واحدة فقط في كل طلب.

الخصائص

RemoveResponseCookie

تزيل هذه السمة ملف تعريف ارتباط واحدًا أو أكثر من ملفات تعريف الارتباط الخاصة بالاستجابة. يُرجى العِلم أنّه من الأفضل استخدام Cookies API لأنّها أقل تكلفة من الناحية الحسابية.

الخصائص

RemoveResponseHeader

يزيل جميع عناوين الردود التي تحمل الأسماء والقيم المحدّدة.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: RemoveResponseHeader) => {...}

  • الاسم

    سلسلة

    اسم عنوان طلب HTTP (غير حساس لحالة الأحرف)

  • القيمة

    سلسلة اختيارية

    قيمة عنوان طلب HTTP (غير حساسة لحالة الأحرف)

RequestCookie

فلتر أو مواصفات لملف تعريف ارتباط في طلبات HTTP

الخصائص

  • الاسم

    سلسلة اختيارية

    اسم ملف تعريف الارتباط

  • القيمة

    سلسلة اختيارية

    قيمة ملف تعريف الارتباط، وقد تكون محاطة بعلامتَي اقتباس مزدوجتَين.

RequestMatcher

تطابق أحداث الشبكة حسب معايير مختلفة.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: RequestMatcher) => {...}

  • contentType

    string[] اختياري

    تتم المطابقة إذا كان نوع وسائط MIME للاستجابة (من عنوان Content-Type في HTTP) مضمّنًا في القائمة.

  • excludeContentType

    string[] اختياري

    تحدث مطابقة إذا كان نوع وسائط MIME للردّ (من عنوان HTTP Content-Type) غير مضمّن في القائمة.

  • excludeRequestHeaders

    HeaderFilter[] اختياري

    تتطابق إذا لم يتطابق أي من عناوين الطلبات مع أي من HeaderFilters.

  • excludeResponseHeaders

    HeaderFilter[] اختياري

    تتطابق إذا لم يتطابق أي من عناوين الاستجابة مع أي من HeaderFilters.

  • firstPartyForCookiesUrl

    UrlFilter اختياري

    Deprecated

    تم تجاهل هذه السمة منذ الإصدار 82.

    تتم المطابقة إذا تم استيفاء شروط UrlFilter لعنوان URL الخاص بـ "الطرف الأول" للطلب. يمكن أن يختلف عنوان URL الخاص بـ "الطرف الأول" للطلب، عند توفّره، عن عنوان URL المستهدف للطلب، ويصف ما يُعتبر "طرفًا أول" لأغراض عمليات التحقّق من ملفات تعريف الارتباط التابعة لجهات خارجية.

  • requestHeaders

    HeaderFilter[] اختياري

    تتم المطابقة إذا تطابق بعض عناوين الطلبات مع أحد HeaderFilters.

  • resourceType

    ‫ResourceType[] اختيارية

    تتطابق إذا كان نوع الطلب مضمّنًا في القائمة. سيتم استبعاد الطلبات التي لا تتطابق مع أي من الأنواع.

  • responseHeaders

    HeaderFilter[] اختياري

    تحدث مطابقة إذا تطابق بعض عناوين الاستجابة مع أحد عناصر HeaderFilters.

  • المراحل

    المرحلة[] اختيارية

    تحتوي على قائمة بالسلاسل التي تصف المراحل. القيم المسموح بها هي onBeforeRequest وonBeforeSendHeaders وonHeadersReceived وonAuthRequired. في حال توفُّر هذه السمة، فإنّها تحصر المراحل السارية على المراحل المُدرَجة فقط. يُرجى العِلم أنّ الشرط الكامل لا ينطبق إلا في المراحل المتوافقة مع جميع السمات.

  • thirdPartyForCookies

    boolean اختياري

    Deprecated

    تم تجاهل هذه السمة منذ الإصدار 87.

    في حال ضبطها على "صحيح"، يتم عرض طلبات المطابقة التي تخضع لسياسات ملفات تعريف الارتباط التابعة لجهات خارجية. إذا تم ضبطها على "خطأ"، ستتطابق مع جميع الطلبات الأخرى.

  • url

    UrlFilter اختياري

    تتم المطابقة إذا تم استيفاء شروط UrlFilter لعنوان URL الخاص بالطلب.

ResponseCookie

مواصفات ملف تعريف الارتباط في استجابات HTTP

الخصائص

  • نطاق

    سلسلة اختيارية

    قيمة سمة ملف تعريف الارتباط "النطاق"

  • expires

    سلسلة اختيارية

    قيمة سمة ملف تعريف الارتباط Expires

  • httpOnly

    سلسلة اختيارية

    وجود سمة ملف تعريف الارتباط HttpOnly

  • maxAge

    number اختياري

    قيمة سمة ملف تعريف الارتباط Max-Age

  • الاسم

    سلسلة اختيارية

    اسم ملف تعريف الارتباط

  • المسار

    سلسلة اختيارية

    قيمة سمة ملف تعريف الارتباط "المسار"

  • آمن

    سلسلة اختيارية

    تتوفّر سمة ملف تعريف الارتباط الآمن.

  • القيمة

    سلسلة اختيارية

    قيمة ملف تعريف الارتباط، وقد تكون محاطة بعلامتَي اقتباس مزدوجتَين.

SendMessageToExtension

يؤدي إلى تشغيل الحدث declarativeWebRequest.onMessage.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: SendMessageToExtension) => {...}

  • رسالة

    سلسلة

    القيمة التي سيتم تمريرها في السمة message للقاموس الذي يتم تمريره إلى معالج الأحداث.

SetRequestHeader

يضبط عنوان الطلب بالاسم المحدّد على القيمة المحدّدة. إذا لم يكن هناك عنوان بالاسم المحدّد من قبل، يتم إنشاء عنوان جديد. تكون مقارنة أسماء العناوين غير حسّاسة لحالة الأحرف دائمًا. يظهر اسم عنوان الطلب مرة واحدة فقط في كل طلب.

الخصائص

  • المنشئ

    باطل

    تبدو الدالة constructor على النحو التالي:

    (arg: SetRequestHeader) => {...}

  • الاسم

    سلسلة

    اسم عنوان طلب HTTP

  • القيمة

    سلسلة

    قيمة عنوان طلب HTTP

Stage

تعداد

"onBeforeRequest"

"onBeforeSendHeaders"

"onHeadersReceived"

"onAuthRequired"

الفعاليات

onMessage

chrome.declarativeWebRequest.onMessage.addListener(
  callback: function,
)

يتم تنشيط هذا الحدث عند إرسال رسالة من خلال declarativeWebRequest.SendMessageToExtension من إجراء في واجهة برمجة تطبيقات طلب الويب التعريفية.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      عنصر

      • documentId

        سلسلة اختيارية

        رقم تعريف فريد عالميًا (UUID) للمستند الذي قدّم الطلب

      • دورة الحياة التي يكون فيها المستند

      • frameId

        الرقم

        تشير القيمة 0 إلى أنّ الطلب يحدث في الإطار الرئيسي، وتشير القيمة الموجبة إلى رقم تعريف إطار فرعي يحدث فيه الطلب. في حال تحميل مستند لإطار (فرعي)، أي إذا كانت قيمة type هي main_frame أو sub_frame، يشير frameId إلى رقم تعريف هذا الإطار، وليس رقم تعريف الإطار الخارجي. تكون معرّفات الإطارات فريدة داخل علامة تبويب.

      • نوع الإطار الذي حدث فيه التنقّل

      • رسالة

        سلسلة

        الرسالة التي أرسلها النص البرمجي الذي يتم استدعاؤه

      • method

        سلسلة

        طريقة HTTP عادية

      • parentDocumentId

        سلسلة اختيارية

        رقم تعريف عالمي فريد (UUID) للمستند الرئيسي الذي يملك هذا الإطار لا يتم ضبط هذه السمة إذا لم يكن هناك موقع رئيسي.

      • parentFrameId

        الرقم

        معرّف الإطار الذي يغلّف الإطار الذي أرسل الطلب. يتم ضبط القيمة على -1 في حال عدم توفّر إطار رئيسي.

      • requestId

        سلسلة

        معرّف الطلب. تكون أرقام تعريف الطلبات فريدة ضمن جلسة المتصفّح. نتيجةً لذلك، يمكن استخدامها لربط أحداث مختلفة من الطلب نفسه.

      • مرحلة

        مرحلة طلب الشبكة التي تم خلالها بدء الحدث

      • tabId

        الرقم

        رقم تعريف علامة التبويب التي يتم فيها تنفيذ الطلب اضبط القيمة على -1 إذا لم يكن الطلب مرتبطًا بعلامة تبويب.

      • timeStamp

        الرقم

        الوقت الذي يتم فيه تشغيل هذه الإشارة، بالملّي ثانية منذ بداية الحقبة

      • توضّح هذه السمة طريقة استخدام المورد المطلوب.

      • url

        سلسلة

onRequest

توفّر Declarative Event API التي تتألف من addRules وremoveRules وgetRules.

الشروط