ब्यौरा
ध्यान दें: यह एपीआई अब काम नहीं करता. इसके बजाय, declarativeNetRequest
API का इस्तेमाल करें. फ़्लाइट में अनुरोधों को रोकने, ब्लॉक करने या उनमें बदलाव करने के लिए, chrome.declarativeWebRequest
एपीआई का इस्तेमाल करें. यह chrome.webRequest
API के मुकाबले काफ़ी तेज़ है, क्योंकि आपके पास JavaScript इंजन के बजाय, ब्राउज़र में जांच किए जाने वाले नियमों को रजिस्टर करने का विकल्प होता है. इससे, राउंडट्रिप का इंतज़ार का समय कम हो जाता है और बेहतर परफ़ॉर्मेंस मिलती है.
अनुमतियां
declarativeWebRequest
आपको "declarativeWebRequest" का एलान करना होगा का इस्तेमाल करने के लिए एक्सटेंशन मेनिफ़ेस्ट में अनुमति एपीआई और होस्ट की अनुमतियां.
{
"name": "My extension",
...
"permissions": [
"declarativeWebRequest",
"*://*/*"
],
...
}
उपलब्धता
मेनिफ़ेस्ट
ध्यान दें कि गैर-संवेदनशील कार्रवाइयों के लिए, होस्ट की अनुमतियों की ज़रूरत नहीं होती:
CancelRequest
IgnoreRules
RedirectToEmptyDocument
RedirectToTransparentImage
SendMessageToExtension()
कार्रवाई के लिए उन होस्ट के लिए होस्ट की अनुमतियों की ज़रूरत होती है जिनका नेटवर्क अनुरोध करता है
पर कोई मैसेज ट्रिगर करना है.
अन्य सभी कार्रवाइयों के लिए, सभी यूआरएल के लिए होस्ट की अनुमतियों की ज़रूरत होती है.
उदाहरण के लिए, अगर एक्सटेंशन के पास सिर्फ़ "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
पर रीडायरेक्ट करने के लिए, नियम सेट अप नहीं कर सकता.
नियम
डिक्लेरेटिव वेब अनुरोध एपीआई, घोषणात्मक एपीआई के सिद्धांतों का पालन करता है. आप रजिस्टर कर सकते हैं
chrome.declarativeWebRequest.onRequest
इवेंट ऑब्जेक्ट के नियम.
डिक्लेरेटिव वेब रिक्वेस्ट एपीआई, मैच करने की एक तरह की शर्तों के साथ काम करता है, जिसका नाम RequestMatcher
है. कॉन्टेंट बनाने
RequestMatcher
, नेटवर्क अनुरोधों का मिलान सिर्फ़ तब करता है, जब सूची में दी गई सभी शर्तें पूरी होती हैं. नीचे दिए गए
जब उपयोगकर्ता, कन्वर्ज़न विंडो में https://www.example.com
डालेगा, तो RequestMatcher
, नेटवर्क अनुरोध को मैच करेगा
ओमिनीबॉक्स:
var matcher = new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: 'example.com', schemes: ['http'] },
resourceType: ['main_frame']
});
स्कीम की वजह से, https://www.example.com
को किए गए अनुरोधों को RequestMatcher
अस्वीकार कर देगा.
साथ ही, resourceType
की वजह से, एम्बेड किए गए iframe के सभी अनुरोध अस्वीकार कर दिए जाएंगे.
"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]);
शर्तों और कार्रवाइयों का आकलन
एलान वाला वेब अनुरोध एपीआई, वेब के वेब अनुरोधों के लिए लाइफ़ साइकल मॉडल का पालन करता है एपीआई का अनुरोध करें. इसका मतलब है कि शर्तों की जांच, वेब अनुरोध के खास स्टेज पर ही की जा सकती है और इसी तरह, कार्रवाइयां सिर्फ़ खास चरणों पर पूरी की जा सकती हैं. इन टेबल में, अनुरोध के ऐसे चरण जो शर्तों और कार्रवाइयों के मुताबिक हों.
उन चरणों का अनुरोध करें, जिनके दौरान स्थिति के एट्रिब्यूट प्रोसेस किए जा सकते हैं. | ||||
---|---|---|---|---|
शर्त से जुड़ा एट्रिब्यूट | 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 |
✓ |
नियमों को बदलने के लिए प्राथमिकताएं इस्तेमाल करें
नियमों को इवेंट एपीआई में बताई गई प्राथमिकताओं के हिसाब से जोड़ा जा सकता है. यह तरीका इनमें से किसी भी स्थिति में हो सकता है:
का इस्तेमाल अपवाद के तौर पर किया जाता है. इस उदाहरण में, 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
अनुरोध में एक कुकी जोड़ता है या किसी कुकी को ओवरराइड करता है, बशर्ते समान नाम की कोई अन्य कुकी पहले से मौजूद हो. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा सही है, क्योंकि यह कंप्यूटेशनल तौर पर कम खर्चीला है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: AddRequestCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
कुकी
अनुरोध में जोड़ी जाने वाली कुकी. कोई भी फ़ील्ड तय नहीं किया जा सकता.
AddResponseCookie
जवाब के लिए एक कुकी जोड़ता है या किसी कुकी को ओवरराइड करता है, अगर उसी नाम की कोई दूसरी कुकी पहले से मौजूद है. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा सही है, क्योंकि यह कंप्यूटेशनल तौर पर कम खर्चीला है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: AddResponseCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
कुकी
जवाब में जोड़ी जाने वाली कुकी. नाम और मान बताना ज़रूरी है.
AddResponseHeader
इस वेब अनुरोध के रिस्पॉन्स में रिस्पॉन्स हेडर जोड़ता है. कई रिस्पॉन्स हेडर का एक ही नाम हो सकता है. इसलिए, इसे बदलने के लिए आपको पहले रिस्पॉन्स हेडर को हटाना होगा और फिर नया रिस्पॉन्स हेडर जोड़ना होगा.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: AddResponseHeader) => {...}
-
आर्ग्युमेंट
-
returns
-
-
नाम
स्ट्रिंग
एचटीटीपी रिस्पॉन्स हेडर का नाम.
-
value
स्ट्रिंग
एचटीटीपी रिस्पॉन्स हेडर का मान.
CancelRequest
एलान वाले इवेंट की कार्रवाई, जो नेटवर्क के अनुरोध को रद्द करती है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: CancelRequest) => {...}
-
आर्ग्युमेंट
-
returns
-
EditRequestCookie
अनुरोध की एक या उससे ज़्यादा कुकी में बदलाव करता है. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा सही है, क्योंकि यह कंप्यूटेशनल तौर पर कम खर्चीला है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: EditRequestCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
फ़िल्टर करें
उन कुकी को फ़िल्टर करें जिनमें बदलाव किया जाएगा. सभी खाली एंट्री को अनदेखा कर दिया जाता है.
-
बदलाव
जिन एट्रिब्यूट ने फ़िल्टर को शामिल किया था उन्हें उन कुकी में बदल दिया जाएगा. खाली स्ट्रिंग पर सेट किए गए एट्रिब्यूट हटा दिए जाते हैं.
EditResponseCookie
जवाब की एक या उससे ज़्यादा कुकी में बदलाव करता है. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा सही है, क्योंकि यह कंप्यूटेशनल तौर पर कम खर्चीला है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: EditResponseCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
फ़िल्टर करें
उन कुकी को फ़िल्टर करें जिनमें बदलाव किया जाएगा. सभी खाली एंट्री को अनदेखा कर दिया जाता है.
-
बदलाव
जिन एट्रिब्यूट ने फ़िल्टर को शामिल किया था उन्हें उन कुकी में बदल दिया जाएगा. खाली स्ट्रिंग पर सेट किए गए एट्रिब्यूट हटा दिए जाते हैं.
FilterResponseCookie
एचटीटीपी रिस्पॉन्स में कुकी का फ़िल्टर.
प्रॉपर्टी
-
ageLowerBound
नंबर वैकल्पिक
कुकी लाइफ़टाइम में शामिल की गई निचली सीमा (मौजूदा समय के बाद सेकंड में तय होती है). सिर्फ़ वे कुकी जिनके खत्म होने की तारीख की तारीख-समय 'now + agelowerBound' पर सेट हो पूरा करने का विकल्प होता है. सत्र कुकी इस फ़िल्टर की शर्तों को पूरा नहीं करती हैं. कुकी के लाइफ़टाइम की गिनती 'ज़्यादा से ज़्यादा उम्र' से की जाती है या 'समयसीमा खत्म हो जाती है' कुकी एट्रिब्यूट. अगर दोनों के बारे में बताया गया हो, तो 'ज़्यादा से ज़्यादा उम्र' कुकी की लाइफ़टाइम वैल्यू का हिसाब लगाने के लिए इस्तेमाल किया जाता है.
-
ageUpperBound
नंबर वैकल्पिक
कुकी लाइफ़टाइम में इनक्लूसिव अपर बाउंड (मौजूदा समय के कुछ सेकंड बाद तय होती है). सिर्फ़ वे कुकी इस शर्त को पूरा करती हैं जिनके खत्म होने की तारीख और समय, इंटरवल [अभी, अब +ageUpperBound] बीच में है. सेशन की कुकी और कुकी, जिनके खत्म होने की तारीख बीत चुकी है वे इस फ़िल्टर की शर्तों को पूरा नहीं करते. कुकी के लाइफ़टाइम की गिनती 'ज़्यादा से ज़्यादा उम्र' से की जाती है या 'समयसीमा खत्म हो जाती है' कुकी एट्रिब्यूट. अगर दोनों के बारे में बताया गया हो, तो 'ज़्यादा से ज़्यादा उम्र' कुकी की लाइफ़टाइम वैल्यू का हिसाब लगाने के लिए इस्तेमाल किया जाता है.
-
डोमेन
स्ट्रिंग ज़रूरी नहीं
डोमेन कुकी एट्रिब्यूट की वैल्यू.
-
समय सीमा समाप्ति
स्ट्रिंग ज़रूरी नहीं
कुकी की समयसीमा खत्म होने वाले एट्रिब्यूट की वैल्यू.
-
httpOnly
स्ट्रिंग ज़रूरी नहीं
HttpOnly कुकी एट्रिब्यूट मौजूद है.
-
maxAge
नंबर वैकल्पिक
'ज़्यादा से ज़्यादा उम्र' कुकी एट्रिब्यूट की वैल्यू
-
नाम
स्ट्रिंग ज़रूरी नहीं
कुकी का नाम.
-
पाथ
स्ट्रिंग ज़रूरी नहीं
पाथ कुकी एट्रिब्यूट की वैल्यू.
-
सुरक्षित
स्ट्रिंग ज़रूरी नहीं
सिक्योर कुकी एट्रिब्यूट की मौजूदगी.
-
सेशनकुकी
बूलियन ज़रूरी नहीं
सेशन की कुकी को फ़िल्टर करता है. सत्र कुकी की किसी भी 'ज़्यादा से ज़्यादा उम्र' में लाइफ़टाइम तय नहीं होता है या 'समयसीमा खत्म हो जाती है' एट्रिब्यूट.
-
value
स्ट्रिंग ज़रूरी नहीं
कुकी की वैल्यू, डबल-कोट में जोड़ी जा सकती है.
HeaderFilter
अलग-अलग शर्तों के हिसाब से अनुरोध के हेडर को फ़िल्टर करता है. एकाधिक मापदंडों का संयोजन के रूप में मूल्यांकन किया जाता है.
प्रॉपर्टी
-
nameContains
string | स्ट्रिंग[] ज़रूरी नहीं
अगर हेडर के नाम में सभी तय स्ट्रिंग शामिल हों, तो मिलान होता है.
-
nameEquals
स्ट्रिंग ज़रूरी नहीं
हेडर का नाम तय स्ट्रिंग के बराबर होने पर मैच होता है.
-
namePrefix
स्ट्रिंग ज़रूरी नहीं
हेडर का नाम किसी तय स्ट्रिंग से शुरू होने पर मैच होता है.
-
nameSuffix
स्ट्रिंग ज़रूरी नहीं
हेडर का नाम तय की गई स्ट्रिंग पर खत्म होने पर मैच होता है.
-
valueContains
string | स्ट्रिंग[] ज़रूरी नहीं
अगर हेडर वैल्यू में सभी तय स्ट्रिंग शामिल हों, तो मैच होता है.
-
valueEquals
स्ट्रिंग ज़रूरी नहीं
हेडर वैल्यू, तय की गई स्ट्रिंग के बराबर होने पर मैच होती है.
-
valuePrefix
स्ट्रिंग ज़रूरी नहीं
हेडर वैल्यू किसी तय स्ट्रिंग से शुरू होने पर मैच होती है.
-
valueSuffix
स्ट्रिंग ज़रूरी नहीं
हेडर वैल्यू तय की गई स्ट्रिंग पर खत्म होने पर मैच होती है.
IgnoreRules
तय शर्तों से मेल खाने वाले सभी नियमों को मास्क करता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: IgnoreRules) => {...}
-
आर्ग्युमेंट
-
returns
-
-
hasTag
स्ट्रिंग ज़रूरी नहीं
अगर सेट हो, तो बताए गए टैग वाले नियमों को अनदेखा कर दिया जाता है. इस अनदेखा को लागू नहीं किया जा सकता. इससे सिर्फ़ उन नियमों और उनकी कार्रवाइयों पर असर पड़ता है जो नेटवर्क अनुरोध के एक ही चरण पर होती हैं. ध्यान दें कि नियमों को उनकी प्राथमिकताओं के घटते क्रम में लागू किया जाता है. इस कार्रवाई से मौजूदा नियम की तुलना में कम प्राथमिकता वाले नियमों पर असर पड़ता है. एक जैसी प्राथमिकता वाले नियमों को अनदेखा किया जा सकता है और नहीं भी.
-
lowerPriorityThan
नंबर वैकल्पिक
अगर यह नीति सेट की जाती है, तो तय की गई वैल्यू से कम प्राथमिकता वाले नियमों को अनदेखा कर दिया जाता है. इस सीमा को जारी नहीं रखा जाता. इसका असर सिर्फ़ उन नियमों और उनकी कार्रवाइयों पर पड़ता है जो नेटवर्क अनुरोध के एक ही चरण पर होती हैं.
RedirectByRegEx
यूआरएल पर रेगुलर एक्सप्रेशन लागू करके अनुरोध को रीडायरेक्ट करता है. रेगुलर एक्सप्रेशन RE2 सिंटैक्स का इस्तेमाल करते हैं.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: RedirectByRegEx) => {...}
-
आर्ग्युमेंट
-
returns
-
-
इन्होंने भेजा है
स्ट्रिंग
कैप्चर ग्रुप वाला मैच पैटर्न. JavaScript रेगुलर एक्सप्रेशन के नज़दीक होने के लिए कैप्चर समूहों को RE2 सिंटैक्स (\1, \2, ...) के बजाय Perl सिंटैक्स ($1, $2, ...) में रेफ़र किया जाता है.
-
से
स्ट्रिंग
डेस्टिनेशन पैटर्न.
RedirectRequest
एलान वाले इवेंट की कार्रवाई, जो नेटवर्क के अनुरोध को रीडायरेक्ट करती है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: RedirectRequest) => {...}
-
आर्ग्युमेंट
-
returns
-
-
redirectUrl
स्ट्रिंग
वह गंतव्य जहां अनुरोध रीडायरेक्ट किया गया है.
RedirectToEmptyDocument
एलान वाले इवेंट की कार्रवाई, जो नेटवर्क के अनुरोध को खाली दस्तावेज़ पर रीडायरेक्ट करती है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: RedirectToEmptyDocument) => {...}
-
आर्ग्युमेंट
-
returns
-
RedirectToTransparentImage
एलान वाले इवेंट की कार्रवाई, जो नेटवर्क के अनुरोध को पारदर्शी इमेज पर रीडायरेक्ट करती है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: RedirectToTransparentImage) => {...}
-
आर्ग्युमेंट
-
returns
-
RemoveRequestCookie
अनुरोध की एक या उससे ज़्यादा कुकी हटाता है. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा सही है, क्योंकि यह कंप्यूटेशनल तौर पर कम खर्चीला है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: RemoveRequestCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
फ़िल्टर करें
हटाई जाने वाली कुकी के लिए फ़िल्टर करें. सभी खाली एंट्री को अनदेखा कर दिया जाता है.
RemoveRequestHeader
बताए गए नाम के अनुरोध हेडर को हटाता है. एक ही अनुरोध पर एक ही हेडर नाम के साथ SetRequestHeader और RemoveRequestHeader का इस्तेमाल न करें. हर अनुरोध के हेडर का नाम, हर अनुरोध में सिर्फ़ एक बार आता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: RemoveRequestHeader) => {...}
-
आर्ग्युमेंट
-
returns
-
-
नाम
स्ट्रिंग
एचटीटीपी अनुरोध के हेडर का नाम (केस-इनसेंसिटिव).
RemoveResponseCookie
यह रिस्पॉन्स की एक या उससे ज़्यादा कुकी हटाता है. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा सही है, क्योंकि यह कंप्यूटेशनल तौर पर कम खर्चीला है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: RemoveResponseCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
फ़िल्टर करें
हटाई जाने वाली कुकी के लिए फ़िल्टर करें. सभी खाली एंट्री को अनदेखा कर दिया जाता है.
RemoveResponseHeader
बताए गए नामों और वैल्यू के सभी रिस्पॉन्स हेडर हटाता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: RemoveResponseHeader) => {...}
-
आर्ग्युमेंट
-
returns
-
-
नाम
स्ट्रिंग
एचटीटीपी अनुरोध के हेडर का नाम (केस-इनसेंसिटिव).
-
value
स्ट्रिंग ज़रूरी नहीं
एचटीटीपी अनुरोध की हेडर वैल्यू (केस-इनसेंसिटिव).
RequestCookie
एचटीटीपी अनुरोधों में, कुकी का फ़िल्टर या उसकी खास बातें.
प्रॉपर्टी
-
नाम
स्ट्रिंग ज़रूरी नहीं
कुकी का नाम.
-
value
स्ट्रिंग ज़रूरी नहीं
कुकी की वैल्यू, डबल-कोट में जोड़ी जा सकती है.
RequestMatcher
अलग-अलग शर्तों के हिसाब से नेटवर्क इवेंट से मेल खाता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: RequestMatcher) => {...}
-
आर्ग्युमेंट
-
returns
-
-
contentType
स्ट्रिंग[] ज़रूरी नहीं
यह तब मैच होता है, जब सूची में रिस्पॉन्स का MIME मीडिया टाइप (एचटीटीपी कॉन्टेंट-टाइप हेडर से) शामिल हो.
-
excludeContentType
स्ट्रिंग[] ज़रूरी नहीं
तब मैच होता है, जब प्रतिक्रिया का MIME मीडिया टाइप (एचटीटीपी कॉन्टेंट-टाइप हेडर से) सूची में शामिल नहीं होता.
-
excludeRequestHeaders
HeaderFilter[] ज़रूरी नहीं
यह तब मैच होता है, जब कोई भी अनुरोध हेडर, किसी भी HeaderFilter से मेल नहीं खाता.
-
excludeResponseHeaders
HeaderFilter[] ज़रूरी नहीं
यह तब मैच होता है, जब कोई भी रिस्पॉन्स हेडर, किसी भी HeaderFilter से मेल नहीं खाता.
-
firstPartyForCookiesUrl
UrlFilter ज़रूरी नहीं
अब काम नहीं करतारिलीज़ 82 के बाद से अनदेखा किया गया.
'पहले पक्ष' के लिए, UrlFilter की शर्तें पूरी होने पर मैच होता है अनुरोध का यूआरएल. 'पहला पक्ष' यूआरएल के मौजूद होने पर, वह अनुरोध के टारगेट यूआरएल से अलग हो सकता है. साथ ही, यह बताता है कि 'पहला पक्ष' किसे माना जाता है कुकी के लिए, तीसरे पक्ष की जांच को पूरा करने के लिए किया जाता है.
-
requestHeaders
HeaderFilter[] ज़रूरी नहीं
मिलान करता है अगर कुछ अनुरोध हेडर का मिलान किसी एक HeaderFilter से किया जाता है.
-
resourceType
ResourceType[] ज़रूरी नहीं
मिलान, अगर अनुरोध का टाइप, सूची में शामिल हो. किसी भी टाइप से मैच न करने वाले अनुरोध, फ़िल्टर करके बाहर कर दिए जाएंगे.
-
responseHeaders
HeaderFilter[] ज़रूरी नहीं
मिलान करता है अगर कुछ प्रतिक्रिया हेडर किसी एक HeaderFilter से मेल खाते हैं.
-
स्टेज
स्टेज[] ज़रूरी नहीं
इसमें स्टेज के बारे में बताने वाली स्ट्रिंग की सूची शामिल होती है. अनुमति वाली वैल्यू 'onbeforeRequest', 'onbeforeSendHeaders', 'onHeadersReceived', 'onAuthrequired' हैं. अगर यह एट्रिब्यूट मौजूद है, तो यह लागू होने वाले स्टेज को, सूची में दिए गए चरणों तक सीमित कर देता है. ध्यान दें कि पूरी शर्त सिर्फ़ उन स्टेज पर लागू होती है जो सभी एट्रिब्यूट के साथ काम करते हैं.
-
thirdPartyForCookies
बूलियन ज़रूरी नहीं
अब काम नहीं करतारिलीज़ 87 के बाद से अनदेखा किया गया.
अगर इस नीति को 'सही है' पर सेट किया जाता है, तो यह ऐसे अनुरोधों से मेल खाता है जो तीसरे पक्ष की कुकी की नीतियों के दायरे में आते हैं. अगर इस नीति को 'गलत है' पर सेट किया जाता है, तो यह बाकी सभी अनुरोधों से मेल खाता है.
-
url
UrlFilter ज़रूरी नहीं
अनुरोध के यूआरएल के लिए UrlFilter की शर्तें पूरी होने पर मैच होता है.
ResponseCookie
एचटीटीपी रिस्पॉन्स में कुकी के बारे में जानकारी.
प्रॉपर्टी
-
डोमेन
स्ट्रिंग ज़रूरी नहीं
डोमेन कुकी एट्रिब्यूट की वैल्यू.
-
समय सीमा समाप्ति
स्ट्रिंग ज़रूरी नहीं
कुकी की समयसीमा खत्म होने वाले एट्रिब्यूट की वैल्यू.
-
httpOnly
स्ट्रिंग ज़रूरी नहीं
HttpOnly कुकी एट्रिब्यूट मौजूद है.
-
maxAge
नंबर वैकल्पिक
'ज़्यादा से ज़्यादा उम्र' कुकी एट्रिब्यूट की वैल्यू
-
नाम
स्ट्रिंग ज़रूरी नहीं
कुकी का नाम.
-
पाथ
स्ट्रिंग ज़रूरी नहीं
पाथ कुकी एट्रिब्यूट की वैल्यू.
-
सुरक्षित
स्ट्रिंग ज़रूरी नहीं
सिक्योर कुकी एट्रिब्यूट की मौजूदगी.
-
value
स्ट्रिंग ज़रूरी नहीं
कुकी की वैल्यू, डबल-कोट में जोड़ी जा सकती है.
SendMessageToExtension
यह declarativeWebRequest.onMessage
इवेंट को ट्रिगर करता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: SendMessageToExtension) => {...}
-
आर्ग्युमेंट
-
returns
-
-
मैसेज
स्ट्रिंग
वह वैल्यू जिसे डिक्शनरी के
message
एट्रिब्यूट में पास किया जाएगा. इसे इवेंट हैंडलर को भेजा जाएगा.
SetRequestHeader
किसी खास नाम के अनुरोध के हेडर को, तय की गई वैल्यू पर सेट करता है. अगर इस नाम वाला हेडर पहले मौजूद नहीं था, तो एक नया हेडर बन जाता है. हेडर के नाम की तुलना हमेशा केस-इनसेंसिटिव होती है. हर अनुरोध के हेडर का नाम, हर अनुरोध में सिर्फ़ एक बार आता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructor
फ़ंक्शन इस तरह दिखता है:(arg: SetRequestHeader) => {...}
-
आर्ग्युमेंट
-
returns
-
-
नाम
स्ट्रिंग
एचटीटीपी अनुरोध के हेडर का नाम.
-
value
स्ट्रिंग
एचटीटीपी अनुरोध के हेडर का मान.
Stage
Enum
"onbeforeRequest"
"onbeforeSendHeaders"
"onHeadersReceived"
"onAuthज़रूरी है"
इवेंट
onMessage
chrome.declarativeWebRequest.onMessage.addListener(
callback: function,
)
यह तब ट्रिगर होता है, जब डिक्लेरेटिव वेब रिक्वेस्ट एपीआई की कार्रवाई से, declarativeWebRequest.SendMessageToExtension
के ज़रिए मैसेज भेजा जाता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(details: object) => void
-
विवरण
ऑब्जेक्ट
-
documentId
स्ट्रिंग ज़रूरी नहीं
उस दस्तावेज़ का यूयूआईडी जिसने अनुरोध किया था.
-
documentLifecycle
वह लाइफ़साइकल जिसमें दस्तावेज़ मौजूद है.
-
frameId
संख्या
वैल्यू 0 होने का मतलब है कि अनुरोध मुख्य फ़्रेम में हुआ है; पॉज़िटिव वैल्यू उस सबफ़्रेम के आईडी को दिखाती है जिसमें अनुरोध होता है. अगर किसी (सब-)फ़्रेम का दस्तावेज़ लोड होता है (
type
main_frame
याsub_frame
है), तोframeId
इस फ़्रेम के आईडी को दिखाता है, न कि आउटर फ़्रेम के आईडी को. फ़्रेम आईडी, किसी टैब में यूनीक होते हैं. -
frameType
उस फ़्रेम का टाइप जिसमें नेविगेशन हुआ था.
-
मैसेज
स्ट्रिंग
कॉलिंग स्क्रिप्ट से भेजा गया मैसेज.
-
तरीका
स्ट्रिंग
स्टैंडर्ड एचटीटीपी तरीका.
-
parentDocumentId
स्ट्रिंग ज़रूरी नहीं
इस फ़्रेम के मालिकाना हक वाले पैरंट दस्तावेज़ का यूयूआईडी. अगर कोई अभिभावक नहीं है, तो यह सेट नहीं होता है.
-
parentFrameId
संख्या
फ़्रेम का आईडी, जो अनुरोध भेजने वाले फ़्रेम को रैप करता है. अगर कोई पैरंट फ़्रेम मौजूद नहीं है, तो -1 पर सेट करें.
-
requestId
स्ट्रिंग
अनुरोध का आईडी. ब्राउज़र सेशन में अनुरोध आईडी यूनीक होते हैं. इस वजह से, इनका इस्तेमाल एक ही अनुरोध के अलग-अलग इवेंट को जोड़ने के लिए किया जा सकता है.
-
स्टेज
नेटवर्क अनुरोध का वह स्टेज जिसके दौरान इवेंट ट्रिगर हुआ.
-
tabId
संख्या
उस टैब का आईडी जिसमें अनुरोध किया जाता है. अगर अनुरोध किसी टैब से न जुड़ा हो, तो उसे -1 पर सेट करें.
-
timeStamp
संख्या
Epoch के बाद से, मिलीसेकंड में वह समय जब यह सिग्नल ट्रिगर होता है.
-
अनुरोध किए गए संसाधन का इस्तेमाल कैसे किया जाएगा.
-
url
स्ट्रिंग
-
-
onRequest
यह घोषणा इवेंट एपीआई उपलब्ध कराता है. इसमें addRules
, removeRules
, और getRules
शामिल हैं.
शर्तें
कार्रवाइयां