الوصف
ملاحظة: تم إيقاف واجهة برمجة التطبيقات هذه نهائيًا. يمكنك الاطّلاع على واجهة برمجة التطبيقات declarativeNetRequest بدلاً من ذلك. استخدِم واجهة برمجة التطبيقات chrome.declarativeWebRequest لاعتراض الطلبات أو حظرها أو تعديلها أثناء نقلها. وهي أسرع بكثير من واجهة برمجة التطبيقات chrome.webRequest لأنّه يمكنك تسجيل قواعد يتم تقييمها في المتصفّح بدلاً من محرّك JavaScript، ما يقلّل من أوقات الاستجابة ويسمح بتحقيق كفاءة أعلى.
الأذونات
declarativeWebRequestيجب الإفصاح عن إذن "declarativeWebRequest" في بيان الإضافة لاستخدام واجهة برمجة التطبيقات هذه، بالإضافة إلى أذونات المضيف.
{
"name": "My extension",
...
"permissions": [
"declarativeWebRequest",
"*://*/*"
],
...
}
مدى التوفّر
البيان
يُرجى العِلم أنّ بعض أنواع الإجراءات غير الحسّاسة لا تتطلّب أذونات المضيف:
CancelRequestIgnoreRulesRedirectToEmptyDocumentRedirectToTransparentImage
يتطلّب الإجراء 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 مفاهيم 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
تضيف هذه السمة ملف تعريف ارتباط إلى الطلب أو تتجاوز ملف تعريف ارتباط، في حال توفّر ملف تعريف ارتباط آخر بالاسم نفسه. يُرجى العِلم أنّه من الأفضل استخدام واجهة برمجة التطبيقات الخاصة بملفات تعريف الارتباط لأنّها أقل تكلفة من الناحية الحسابية.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: AddRequestCookie) => {...}
-
arg
-
returns
-
-
كعكة محلاة
ملف تعريف الارتباط الذي ستتم إضافته إلى الطلب يجب ألا يكون أي حقل غير محدّد.
AddResponseCookie
تضيف هذه السمة ملف تعريف ارتباط إلى الردّ أو تتجاوز ملف تعريف ارتباط، في حال توفّر ملف تعريف ارتباط آخر بالاسم نفسه. يُرجى العِلم أنّه من الأفضل استخدام واجهة برمجة التطبيقات الخاصة بملفات تعريف الارتباط لأنّها أقل تكلفة من الناحية الحسابية.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: AddResponseCookie) => {...}
-
returns
-
-
كعكة محلاة
ملف تعريف الارتباط الذي ستتم إضافته إلى الردّ يجب تحديد الاسم والقيمة.
AddResponseHeader
تضيف هذه السمة عنوان الاستجابة إلى استجابة طلب الويب هذا. بما أنّ عناوين الاستجابة المتعدّدة قد تشترك في الاسم نفسه، عليك أولاً إزالة عنوان استجابة ثم إضافة عنوان جديد من أجل استبدال عنوان.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: AddResponseHeader) => {...}
-
returns
-
-
الاسم
سلسلة
اسم عنوان استجابة HTTP
-
القيمة
سلسلة
قيمة عنوان استجابة HTTP
CancelRequest
إجراء حدث تعريفي يلغي طلب شبكة.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: CancelRequest) => {...}
-
arg
-
returns
-
EditRequestCookie
تعديل ملفات تعريف ارتباط واحدة أو أكثر للطلب يُرجى العِلم أنّه من الأفضل استخدام واجهة برمجة التطبيقات الخاصة بملفات تعريف الارتباط لأنّها أقل تكلفة من الناحية الحسابية.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: EditRequestCookie) => {...}
-
returns
-
-
تصفية
فلتر لملفات تعريف الارتباط التي سيتم تعديلها ويتم تجاهل جميع الإدخالات الفارغة.
-
التعديل
السمات التي سيتم تجاهلها في ملفات تعريف الارتباط التي تطابقت مع الفلتر تتم إزالة السمات التي تم ضبطها على سلسلة فارغة.
EditResponseCookie
تعديل ملف تعريف ارتباط واحد أو أكثر من ملفات تعريف الارتباط الخاصة بالرد يُرجى العِلم أنّه من الأفضل استخدام واجهة برمجة التطبيقات الخاصة بملفات تعريف الارتباط لأنّها أقل تكلفة من الناحية الحسابية.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: EditResponseCookie) => {...}
-
returns
-
-
تصفية
فلتر لملفات تعريف الارتباط التي سيتم تعديلها ويتم تجاهل جميع الإدخالات الفارغة.
-
التعديل
السمات التي سيتم تجاهلها في ملفات تعريف الارتباط التي تطابقت مع الفلتر تتم إزالة السمات التي تم ضبطها على سلسلة فارغة.
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) => {...}
-
arg
-
returns
-
-
hasTag
سلسلة اختيارية
في حال ضبط هذه السمة، يتم تجاهل القواعد التي تتضمّن العلامة المحدّدة. لا يتم الاحتفاظ بهذا التجاهل، بل يؤثر فقط في القواعد والإجراءات في مرحلة طلب الشبكة نفسها. يُرجى العِلم أنّه يتم تنفيذ القواعد بترتيب تنازلي حسب أولوياتها. يؤثّر هذا الإجراء في القواعد ذات الأولوية الأقل من القاعدة الحالية. قد يتم تجاهل القواعد التي لها الأولوية نفسها أو لا يتم تجاهلها.
-
lowerPriorityThan
number اختيارية
في حال ضبط هذه السياسة، يتم تجاهل القواعد ذات الأولوية الأقل من القيمة المحدّدة. لا يتم الاحتفاظ بهذا الحدّ، بل يؤثّر فقط في القواعد والإجراءات التي تتّخذها في مرحلة طلب الشبكة نفسها.
RedirectByRegEx
تعيد توجيه الطلب من خلال تطبيق تعبير عادي على عنوان URL. تستخدم التعبيرات العادية بنية RE2.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: RedirectByRegEx) => {...}
-
arg
-
returns
-
-
من
سلسلة
نمط مطابق قد يحتوي على مجموعات الالتقاط يتم الرجوع إلى مجموعات الالتقاط في بنية Perl ($1 و$2 وما إلى ذلك) بدلاً من بنية RE2 (\1 و\2 وما إلى ذلك) لكي تكون أقرب إلى التعبيرات العادية في JavaScript.
-
إلى
سلسلة
نمط الوجهة
RedirectRequest
إجراء الحدث التعريفي الذي يعيد توجيه طلب شبكة.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: RedirectRequest) => {...}
-
arg
-
returns
-
-
redirectUrl
سلسلة
الوجهة التي تتم إعادة توجيه الطلب إليها
RedirectToEmptyDocument
إجراء حدث تعريفي يعيد توجيه طلب شبكة إلى مستند فارغ.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: RedirectToEmptyDocument) => {...}
-
returns
-
RedirectToTransparentImage
إجراء حدث تعريفي يعيد توجيه طلب شبكة إلى صورة شفافة.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: RedirectToTransparentImage) => {...}
-
returns
-
RemoveRequestCookie
تزيل هذه السمة ملف تعريف ارتباط واحدًا أو أكثر من ملفات تعريف الارتباط الخاصة بالطلب. يُرجى العِلم أنّه من الأفضل استخدام واجهة برمجة التطبيقات الخاصة بملفات تعريف الارتباط لأنّها أقل تكلفة من الناحية الحسابية.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: RemoveRequestCookie) => {...}
-
returns
-
-
تصفية
فلتر لملفات تعريف الارتباط التي ستتم إزالتها ويتم تجاهل جميع الإدخالات الفارغة.
RemoveRequestHeader
يزيل عنوان الطلب الذي يحمل الاسم المحدّد. لا تستخدِم SetRequestHeader وRemoveRequestHeader مع اسم العنوان نفسه في الطلب نفسه. يظهر اسم عنوان الطلب مرة واحدة فقط في كل طلب.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: RemoveRequestHeader) => {...}
-
returns
-
-
الاسم
سلسلة
اسم عنوان طلب HTTP (غير حساس لحالة الأحرف)
RemoveResponseCookie
تزيل هذه السمة ملف تعريف ارتباط واحدًا أو أكثر من ملفات تعريف الارتباط الخاصة بالاستجابة. يُرجى العِلم أنّه من الأفضل استخدام واجهة برمجة التطبيقات الخاصة بملفات تعريف الارتباط لأنّها أقل تكلفة من الناحية الحسابية.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: RemoveResponseCookie) => {...}
-
returns
-
-
تصفية
فلتر لملفات تعريف الارتباط التي ستتم إزالتها ويتم تجاهل جميع الإدخالات الفارغة.
RemoveResponseHeader
تزيل هذه السمة جميع عناوين الردود التي تحمل الأسماء والقيم المحدّدة.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: RemoveResponseHeader) => {...}
-
returns
-
-
الاسم
سلسلة
اسم عنوان طلب HTTP (غير حساس لحالة الأحرف)
-
القيمة
سلسلة اختيارية
قيمة عنوان طلب HTTP (غير حساسة لحالة الأحرف)
RequestCookie
فلتر أو مواصفات لملف تعريف ارتباط في طلبات HTTP
الخصائص
-
الاسم
سلسلة اختيارية
تمثّل هذه السمة اسم ملف تعريف الارتباط.
-
القيمة
سلسلة اختيارية
قيمة ملف تعريف الارتباط، وقد تكون محاطة بعلامتَي اقتباس مزدوجتَين.
RequestMatcher
تطابق أحداث الشبكة حسب معايير مختلفة.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: RequestMatcher) => {...}
-
arg
-
returns
-
-
contentType
string[] اختياري
تتم المطابقة إذا كان نوع وسائط MIME الخاص بالاستجابة (من العنوان "نوع المحتوى" في HTTP) مضمّنًا في القائمة.
-
excludeContentType
string[] اختياري
تتم المطابقة إذا كان نوع وسائط MIME الخاص بالاستجابة (من عنوان HTTP Content-Type) غير مضمّن في القائمة.
-
excludeRequestHeaders
HeaderFilter[] اختياري
تحدث مطابقة إذا لم يتطابق أي من عناوين الطلبات مع أي من HeaderFilters.
-
excludeResponseHeaders
HeaderFilter[] اختياري
تحدث مطابقة إذا لم يتطابق أي من عناوين الاستجابة مع أي من HeaderFilters.
-
firstPartyForCookiesUrl
UrlFilter اختياري
تم إيقافها نهائيًاتم تجاهلها منذ الإصدار 82.
تحدث مطابقة إذا تم استيفاء شروط UrlFilter لعنوان URL "الطرف الأول" للطلب. يمكن أن يختلف عنوان URL الخاص بـ "الطرف الأول" للطلب، عند توفّره، عن عنوان URL المستهدف للطلب، ويصف ما يُعتبر "طرفًا أول" لأغراض عمليات التحقّق من ملفات تعريف الارتباط التابعة لجهات خارجية.
-
requestHeaders
HeaderFilter[] اختياري
تتم المطابقة إذا تطابق بعض عناوين الطلبات مع أحد عناصر HeaderFilters.
-
resourceType
ResourceType[] اختياري
تتم المطابقة إذا كان نوع الطلب مضمّنًا في القائمة. سيتم فلترة الطلبات التي لا يمكن مطابقتها مع أي من الأنواع.
-
responseHeaders
HeaderFilter[] اختياري
تتم المطابقة إذا تمت مطابقة بعض عناوين الاستجابة مع أحد عناصر HeaderFilters.
-
المراحل
Stage[] اختياري
تحتوي على قائمة بالسلاسل التي تصف المراحل. القيم المسموح بها هي onBeforeRequest وonBeforeSendHeaders وonHeadersReceived وonAuthRequired. في حال توفّر هذه السمة، فإنّها تحصر المراحل السارية على المراحل المُدرَجة. يُرجى العِلم أنّ الشرط الكامل لا ينطبق إلا في المراحل المتوافقة مع جميع السمات.
-
thirdPartyForCookies
boolean اختياري
تم إيقافها نهائيًاتم تجاهل هذا الخيار منذ الإصدار 87.
إذا تم ضبطها على "صحيح"، ستتم مطابقة الطلبات الخاضعة لسياسات ملفات تعريف الارتباط التابعة لجهات خارجية. إذا تم ضبطها على "خطأ"، ستتطابق مع جميع الطلبات الأخرى.
-
url
UrlFilter اختياري
تتم المطابقة إذا تم استيفاء شروط UrlFilter لعنوان URL الخاص بالطلب.
ResponseCookie
مواصفات ملف تعريف الارتباط في استجابات HTTP
الخصائص
-
نطاق
سلسلة اختيارية
قيمة سمة ملف تعريف الارتباط "النطاق"
-
expires
سلسلة اختيارية
قيمة سمة ملف تعريف الارتباط Expires
-
httpOnly
سلسلة اختيارية
وجود سمة ملف تعريف الارتباط HttpOnly
-
maxAge
number اختيارية
قيمة سمة ملف تعريف الارتباط Max-Age
-
الاسم
سلسلة اختيارية
تمثّل هذه السمة اسم ملف تعريف الارتباط.
-
المسار
سلسلة اختيارية
قيمة سمة ملف تعريف الارتباط "المسار"
-
آمن
سلسلة اختيارية
وجود سمة ملف تعريف الارتباط الآمن
-
القيمة
سلسلة اختيارية
قيمة ملف تعريف الارتباط، وقد تكون محاطة بعلامتَي اقتباس مزدوجتَين.
SendMessageToExtension
يؤدي إلى تشغيل الحدث declarativeWebRequest.onMessage.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: SendMessageToExtension) => {...}
-
returns
-
-
رسالة
سلسلة
القيمة التي سيتم تمريرها في السمة
messageللقاموس الذي يتم تمريره إلى معالج الأحداث.
SetRequestHeader
يضبط عنوان الطلب الذي يحمل الاسم المحدّد على القيمة المحدّدة. إذا لم يكن هناك عنوان بالاسم المحدّد من قبل، يتم إنشاء عنوان جديد. تكون مقارنة أسماء العناوين غير حسّاسة لحالة الأحرف دائمًا. يظهر اسم عنوان الطلب مرة واحدة فقط في كل طلب.
الخصائص
-
الدالة الإنشائية
باطل
تبدو الدالة
constructorعلى النحو التالي:(arg: SetRequestHeader) => {...}
-
arg
-
returns
-
-
الاسم
سلسلة
اسم عنوان طلب HTTP
-
القيمة
سلسلة
قيمة عنوان طلب HTTP
Stage
تعداد
"onBeforeRequest"
"onBeforeSendHeaders"
"onHeadersReceived"
"onAuthRequired"
الفعاليات
onMessage
chrome.declarativeWebRequest.onMessage.addListener(
callback: function,
)
يتم تشغيل هذا الحدث عند إرسال رسالة من خلال declarativeWebRequest.SendMessageToExtension من إجراء في واجهة برمجة التطبيقات Declarative Web Request API.
المعلمات
-
callback
دالة
تظهر المَعلمة
callbackعلى النحو التالي:(details: object) => void
-
التفاصيل
عنصر
-
documentId
سلسلة اختيارية
رقم تعريف فريد عالميًا (UUID) للمستند الذي أرسل الطلب
-
documentLifecycle
تمثّل هذه السمة دورة الحياة التي يمرّ بها المستند.
-
frameId
الرقم
تشير القيمة 0 إلى أنّ الطلب يحدث في الإطار الرئيسي، وتشير القيمة الموجبة إلى رقم تعريف إطار فرعي يحدث فيه الطلب. في حال تحميل مستند لإطار (فرعي)، أي إذا كانت قيمة
typeهيmain_frameأوsub_frame، يشيرframeIdإلى رقم تعريف هذا الإطار، وليس رقم تعريف الإطار الخارجي. تكون أرقام تعريف الإطارات فريدة داخل علامة التبويب. -
frameType
نوع الإطار الذي حدث فيه التنقّل
-
رسالة
سلسلة
الرسالة التي أرسلها النص البرمجي الذي يستدعي الدالة
-
method
سلسلة
طريقة HTTP عادية
-
parentDocumentId
سلسلة اختيارية
رقم تعريف فريد عالميًا (UUID) للمستند الرئيسي الذي يملك هذا الإطار لا يتم ضبط هذه السمة إذا لم يكن هناك عنصر رئيسي.
-
parentFrameId
الرقم
معرّف الإطار الذي يغلّف الإطار الذي أرسل الطلب. يتم ضبط القيمة على -1 في حال عدم توفّر إطار رئيسي.
-
requestId
سلسلة
معرّف الطلب تكون أرقام تعريف الطلبات فريدة ضمن جلسة المتصفّح. نتيجةً لذلك، يمكن استخدامها لربط أحداث مختلفة من الطلب نفسه.
-
مرحلة
مرحلة طلب الشبكة التي تم خلالها تشغيل الحدث
-
tabId
الرقم
رقم تعريف علامة التبويب التي يتم فيها تنفيذ الطلب اضبط القيمة على -1 إذا لم يكن الطلب مرتبطًا بعلامة تبويب.
-
timeStamp
الرقم
الوقت الذي يتم فيه تشغيل هذه الإشارة، بالمللي ثانية منذ بداية الفترة
-
النوع
توضّح هذه السمة طريقة استخدام المورد المطلوب.
-
url
سلسلة
-
-
onRequest
توفّر Declarative Event API التي تتألف من addRules وremoveRules وgetRules.
الشروط
الإجراءات