कंपनी का ब्यौरा
ध्यान दें: यह एपीआई अब काम नहीं करता. इसके बजाय, 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']
});
स्कीम की वजह से, RequestMatcher
https://www.example.com
के अनुरोध अस्वीकार कर देगा.
साथ ही, एम्बेड किए गए 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]);
शर्तों और कार्रवाइयों का आकलन
डिक्लेरेटिव वेब रिक्वेस्ट एपीआई, वेब अनुरोध एपीआई के वेब अनुरोधों के लिए, लाइफ़ साइकल मॉडल का पालन करता है. इसका मतलब है कि शर्तों की जांच वेब अनुरोध के सिर्फ़ चुनिंदा स्टेज पर की जा सकती है. साथ ही, कार्रवाइयां भी सिर्फ़ चुनिंदा चरणों पर ही की जा सकती हैं. नीचे दी गई टेबल में, अनुरोध के उन स्टेज की सूची दी गई है जो शर्तों और कार्रवाइयों के साथ काम करते हैं.
उन स्टेज के अनुरोध करें जिनके दौरान, स्थिति के एट्रिब्यूट को प्रोसेस किया जा सकता है. | ||||
---|---|---|---|---|
शर्त एट्रिब्यूट | 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 |
✓ |
नियमों को बदलने के लिए, प्राथमिकताओं का इस्तेमाल करना
नियमों को इवेंट एपीआई में बताई गई प्राथमिकताओं के साथ जोड़ा जा सकता है. इस तरीके का इस्तेमाल,
अपवादों को बताने के लिए किया जा सकता है. नीचे दिया गया उदाहरण "myserver.com" सर्वर को छोड़कर evil.jpg
नाम वाली इमेज के सभी अनुरोधों को ब्लॉक करता है.
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 का इस्तेमाल करना ज़्यादा बेहतर होगा, क्योंकि यह कंप्यूटर के हिसाब से सस्ता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: AddRequestCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
कुकी
अनुरोध में कुकी जोड़नी है. कोई भी फ़ील्ड तय नहीं हो सकता.
AddResponseCookie
रिस्पॉन्स में कोई कुकी जोड़ता है या कुकी को ओवरराइड करता है. ऐसा तब होता है, जब इसी नाम की कोई दूसरी कुकी पहले से मौजूद हो. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा बेहतर होगा, क्योंकि यह कंप्यूटर के हिसाब से सस्ता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: AddResponseCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
कुकी
कुकी को जवाब में जोड़ना है. नाम और मान बताना ज़रूरी है.
AddResponseHeader
इस वेब अनुरोध के जवाब में रिस्पॉन्स हेडर जोड़ता है. हो सकता है कि कई रिस्पॉन्स हेडर एक ही नाम का इस्तेमाल करते हों. इसलिए, किसी रिस्पॉन्स हेडर को हटाने के लिए, आपको सबसे पहले उसे हटाना होगा. इसके बाद, नया रिस्पॉन्स हेडर जोड़ना होगा.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: AddResponseHeader) => {...}
-
आर्ग्युमेंट
-
returns
-
-
नाम
स्ट्रिंग
एचटीटीपी रिस्पॉन्स हेडर का नाम.
-
value
स्ट्रिंग
एचटीटीपी रिस्पॉन्स हेडर की वैल्यू.
CancelRequest
डिक्लेरेटिव इवेंट ऐक्शन, जो नेटवर्क के अनुरोध को रद्द कर देता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: CancelRequest) => {...}
-
आर्ग्युमेंट
-
returns
-
EditRequestCookie
अनुरोध की एक या उससे ज़्यादा कुकी में बदलाव करता है. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा बेहतर होगा, क्योंकि यह कंप्यूटर के हिसाब से सस्ता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: EditRequestCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
फ़िल्टर
उन कुकी के लिए फ़िल्टर करें जिनमें बदलाव किया जाएगा. सभी खाली एंट्री को अनदेखा किया जाता है.
-
संशोधन
ऐसे एट्रिब्यूट जो फ़िल्टर बन जाने वाली कुकी में बदल जाएंगे. खाली स्ट्रिंग पर सेट किए गए एट्रिब्यूट हटा दिए जाते हैं.
EditResponseCookie
रिस्पॉन्स की एक या उससे ज़्यादा कुकी में बदलाव करता है. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा बेहतर होगा, क्योंकि यह कंप्यूटर के हिसाब से सस्ता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: EditResponseCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
फ़िल्टर
उन कुकी के लिए फ़िल्टर करें जिनमें बदलाव किया जाएगा. सभी खाली एंट्री को अनदेखा किया जाता है.
-
संशोधन
ऐसे एट्रिब्यूट जो फ़िल्टर बन जाने वाली कुकी में बदल जाएंगे. खाली स्ट्रिंग पर सेट किए गए एट्रिब्यूट हटा दिए जाते हैं.
FilterResponseCookie
एचटीटीपी रिस्पॉन्स में कुकी का फ़िल्टर.
प्रॉपर्टी
-
ageLowerBound
नंबर ज़रूरी नहीं
कुकी के जीवनकाल की इनक्लूसिव लोअर बाउंड (मौजूदा समय के बाद के सेकंड में दी गई जानकारी). इस शर्त को पूरा करने के लिए सिर्फ़ वे कुकी शामिल हैं जिनकी समयसीमा खत्म होने की तारीख-समय 'अभी + एज लोअरबाउंड' या बाद में सेट किया गया हो. सेशन कुकी इस फ़िल्टर की शर्तों के मुताबिक नहीं हैं. कुकी के लाइफ़टाइम को 'ज़्यादा से ज़्यादा उम्र' या 'समयसीमा खत्म हो चुकी है' कुकी एट्रिब्यूट से कैलकुलेट किया जाता है. अगर दोनों एट्रिब्यूट की वैल्यू दी गई है, तो कुकी के लाइफ़टाइम का हिसाब लगाने के लिए 'ज़्यादा से ज़्यादा उम्र' का इस्तेमाल किया जाता है.
-
ageUpperBound
नंबर ज़रूरी नहीं
कुकी के जीवनकाल की इनक्लूसिव अपर बाउंड (मौजूदा समय के बाद के सेकंड में दी गई जानकारी). इस शर्त को पूरा करने के लिए, सिर्फ़ वे कुकी शामिल हैं जिनकी समयसीमा खत्म होने की तारीख, इंटरवल [अब, अब +ageUpperBound] में है. वे सेशन कुकी और कुकी जिनकी समयसीमा खत्म होने की तारीख बीत चुकी है, वे इस फ़िल्टर की शर्त को पूरा नहीं करती हैं. कुकी के लाइफ़टाइम को 'ज़्यादा से ज़्यादा उम्र' या 'समयसीमा खत्म हो चुकी है' कुकी एट्रिब्यूट से कैलकुलेट किया जाता है. अगर दोनों एट्रिब्यूट की वैल्यू दी गई है, तो कुकी के लाइफ़टाइम का हिसाब लगाने के लिए 'ज़्यादा से ज़्यादा उम्र' का इस्तेमाल किया जाता है.
-
डोमेन
स्ट्रिंग ज़रूरी नहीं
डोमेन कुकी एट्रिब्यूट की वैल्यू.
-
ख़त्म होने की तारीख़
स्ट्रिंग ज़रूरी नहीं
समयसीमा खत्म होने वाली कुकी एट्रिब्यूट की वैल्यू.
-
httpOnly
स्ट्रिंग ज़रूरी नहीं
HttpOnly कुकी एट्रिब्यूट का मौजूद होना.
-
maxAge
नंबर ज़रूरी नहीं
ज़्यादा से ज़्यादा उम्र की कुकी एट्रिब्यूट की वैल्यू
-
नाम
स्ट्रिंग ज़रूरी नहीं
कुकी का नाम.
-
पाथ
स्ट्रिंग ज़रूरी नहीं
पाथ कुकी एट्रिब्यूट की वैल्यू.
-
सुरक्षित
स्ट्रिंग ज़रूरी नहीं
Secure कुकी एट्रिब्यूट की मौजूदगी.
-
sessionCookie
बूलियन ज़रूरी नहीं
सेशन की कुकी फ़िल्टर करता है. सेशन कुकी के किसी भी 'ज़्यादा से ज़्यादा उम्र' या 'समयसीमा खत्म हो जाने' एट्रिब्यूट में कोई लाइफ़टाइम जानकारी नहीं दी गई है.
-
value
स्ट्रिंग ज़रूरी नहीं
कुकी की वैल्यू, डबल कोट में जोड़ी जा सकती है.
HeaderFilter
फ़िल्टर अलग-अलग शर्तों के हिसाब से हेडर का अनुरोध करते हैं. एक से ज़्यादा शर्तों का आकलन, एक कॉम्बिनेशन के तौर पर किया जाता है.
प्रॉपर्टी
-
nameContains
स्ट्रिंग | string[] ज़रूरी नहीं
तब मैच करता है, जब हेडर के नाम में तय की गई सभी स्ट्रिंग शामिल होती हैं.
-
nameEquals
स्ट्रिंग ज़रूरी नहीं
हेडर का नाम, बताई गई स्ट्रिंग के बराबर होने पर मैच करता है.
-
namePrefix
स्ट्रिंग ज़रूरी नहीं
यह तब मैच करता है, जब हेडर का नाम, बताई गई स्ट्रिंग से शुरू होता है.
-
nameSuffix
स्ट्रिंग ज़रूरी नहीं
हेडर का नाम, बताई गई स्ट्रिंग से खत्म होने पर मैच करता है.
-
valueContains
स्ट्रिंग | string[] ज़रूरी नहीं
यह तब मैच करता है, जब हेडर की वैल्यू में तय की गई सभी स्ट्रिंग शामिल होती हैं.
-
valueEquals
स्ट्रिंग ज़रूरी नहीं
हेडर की वैल्यू, दी गई स्ट्रिंग के बराबर होने पर मैच करता है.
-
valuePrefix
स्ट्रिंग ज़रूरी नहीं
हेडर की वैल्यू, बताई गई स्ट्रिंग से शुरू होने पर मैच करती है.
-
valueSuffix
स्ट्रिंग ज़रूरी नहीं
हेडर की वैल्यू, बताई गई स्ट्रिंग पर खत्म होने पर मैच करती है.
IgnoreRules
तय शर्तों से मेल खाने वाले सभी नियमों को मास्क करता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: IgnoreRules) => {...}
-
आर्ग्युमेंट
-
returns
-
-
hasTag
स्ट्रिंग ज़रूरी नहीं
अगर यह नीति सेट है, तो तय किए गए टैग वाले नियमों को अनदेखा कर दिया जाता है. इसे अनदेखा नहीं किया जाता. इसका असर सिर्फ़ नेटवर्क के एक ही अनुरोध के लिए सेट किए गए नियमों और उनकी कार्रवाइयों पर पड़ता है. ध्यान दें कि नियमों को उनकी प्राथमिकताओं के हिसाब से घटते क्रम में लागू किया जाता है. इस कार्रवाई से, मौजूदा नियम की तुलना में कम प्राथमिकता वाले नियमों पर असर पड़ता है. एक जैसी प्राथमिकता वाले नियमों को अनदेखा किया जा सकता है और नहीं भी.
-
lowerPriorityThan
नंबर ज़रूरी नहीं
अगर यह नीति सेट की जाती है, तो तय की गई वैल्यू से कम प्राथमिकता वाले नियमों को अनदेखा कर दिया जाता है. यह सीमा लागू नहीं होती. इससे, एक ही नेटवर्क अनुरोध के स्टेज में सिर्फ़ नियमों और उनकी कार्रवाइयों पर असर पड़ता है.
RedirectByRegEx
यूआरएल पर रेगुलर एक्सप्रेशन लागू करके, अनुरोध को रीडायरेक्ट करता है. रेगुलर एक्सप्रेशन, RE2 सिंटैक्स का इस्तेमाल करते हैं.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: RedirectByRegEx) => {...}
-
आर्ग्युमेंट
-
returns
-
-
इन्होंने भेजा है
स्ट्रिंग
मैच होने वाला ऐसा पैटर्न जिसमें कैप्चर ग्रुप हो सकते हैं. JavaScript रेगुलर एक्सप्रेशन के करीब होने के लिए कैप्चर ग्रुप को RE2 सिंटैक्स (\1, \2, ...) के बजाय Perl सिंटैक्स ($1, $2, ...) में रेफ़र किया जाता है.
-
से
स्ट्रिंग
डेस्टिनेशन पैटर्न.
RedirectRequest
डिक्लेरेटिव इवेंट ऐक्शन, जो नेटवर्क अनुरोध को रीडायरेक्ट करता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: RedirectRequest) => {...}
-
आर्ग्युमेंट
-
returns
-
-
redirectUrl
स्ट्रिंग
वह डेस्टिनेशन जहां अनुरोध को रीडायरेक्ट किया जाता है.
RedirectToEmptyDocument
डिक्लेरेटिव इवेंट ऐक्शन, जो नेटवर्क अनुरोध को किसी खाली दस्तावेज़ पर रीडायरेक्ट करता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: RedirectToEmptyDocument) => {...}
-
आर्ग्युमेंट
-
returns
-
RedirectToTransparentImage
डिक्लेरेटिव इवेंट ऐक्शन, जो नेटवर्क अनुरोध को पारदर्शी इमेज पर रीडायरेक्ट करता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: RedirectToTransparentImage) => {...}
-
आर्ग्युमेंट
-
returns
-
RemoveRequestCookie
अनुरोध की एक या उससे ज़्यादा कुकी हटाता है. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा बेहतर होगा, क्योंकि यह कंप्यूटर के हिसाब से सस्ता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: RemoveRequestCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
फ़िल्टर
उन कुकी के लिए फ़िल्टर जिन्हें हटा दिया जाएगा. सभी खाली एंट्री को अनदेखा किया जाता है.
RemoveRequestHeader
बताए गए नाम के अनुरोध के हेडर को हटा देता है. एक ही अनुरोध पर, एक ही हेडर नाम के साथ SetRequestHeader और RemoveRequestHeader का इस्तेमाल न करें. हर अनुरोध के हेडर का नाम, हर अनुरोध में सिर्फ़ एक बार आता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: RemoveRequestHeader) => {...}
-
आर्ग्युमेंट
-
returns
-
-
नाम
स्ट्रिंग
एचटीटीपी अनुरोध के हेडर का नाम (केस-इनसेंसिटिव).
RemoveResponseCookie
रिस्पॉन्स की एक या उससे ज़्यादा कुकी हटा देता है. ध्यान दें कि Cookie API का इस्तेमाल करना ज़्यादा बेहतर होगा, क्योंकि यह कंप्यूटर के हिसाब से सस्ता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: RemoveResponseCookie) => {...}
-
आर्ग्युमेंट
-
returns
-
-
फ़िल्टर
उन कुकी के लिए फ़िल्टर जिन्हें हटा दिया जाएगा. सभी खाली एंट्री को अनदेखा किया जाता है.
RemoveResponseHeader
दिए गए नामों और वैल्यू के सभी रिस्पॉन्स हेडर हटा देता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: RemoveResponseHeader) => {...}
-
आर्ग्युमेंट
-
returns
-
-
नाम
स्ट्रिंग
एचटीटीपी अनुरोध के हेडर का नाम (केस-इनसेंसिटिव).
-
value
स्ट्रिंग ज़रूरी नहीं
एचटीटीपी अनुरोध के हेडर की वैल्यू (केस-इनसेंसिटिव).
RequestCookie
एचटीटीपी अनुरोधों में कुकी का फ़िल्टर या खास जानकारी.
प्रॉपर्टी
-
नाम
स्ट्रिंग ज़रूरी नहीं
कुकी का नाम.
-
value
स्ट्रिंग ज़रूरी नहीं
कुकी की वैल्यू, डबल कोट में जोड़ी जा सकती है.
RequestMatcher
अलग-अलग शर्तों के हिसाब से, नेटवर्क इवेंट से मैच करता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
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 के बाद से अनदेखा किया गया.
अगर नीति को 'सही है' पर सेट किया जाता है, तो ऐसे अनुरोधों से मेल खाता है जो तीसरे पक्ष की कुकी नीतियों के तहत आते हैं. अगर यह नीति 'गलत है' पर सेट है, तो यह बाकी सभी अनुरोधों से मेल खाता है.
-
यूआरएल
UrlFilter ज़रूरी नहीं
यह तब मैच करता है, जब अनुरोध के यूआरएल के लिए UrlFilter की शर्तें पूरी होती हों.
ResponseCookie
एचटीटीपी रिस्पॉन्स में कुकी की खास जानकारी.
प्रॉपर्टी
-
डोमेन
स्ट्रिंग ज़रूरी नहीं
डोमेन कुकी एट्रिब्यूट की वैल्यू.
-
ख़त्म होने की तारीख़
स्ट्रिंग ज़रूरी नहीं
समयसीमा खत्म होने वाली कुकी एट्रिब्यूट की वैल्यू.
-
httpOnly
स्ट्रिंग ज़रूरी नहीं
HttpOnly कुकी एट्रिब्यूट का मौजूद होना.
-
maxAge
नंबर ज़रूरी नहीं
ज़्यादा से ज़्यादा उम्र की कुकी एट्रिब्यूट की वैल्यू
-
नाम
स्ट्रिंग ज़रूरी नहीं
कुकी का नाम.
-
पाथ
स्ट्रिंग ज़रूरी नहीं
पाथ कुकी एट्रिब्यूट की वैल्यू.
-
सुरक्षित
स्ट्रिंग ज़रूरी नहीं
Secure कुकी एट्रिब्यूट की मौजूदगी.
-
value
स्ट्रिंग ज़रूरी नहीं
कुकी की वैल्यू, डबल कोट में जोड़ी जा सकती है.
SendMessageToExtension
declarativeWebRequest.onMessage
इवेंट को ट्रिगर करता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: SendMessageToExtension) => {...}
-
आर्ग्युमेंट
-
returns
-
-
ग्राहक का मैसेज
स्ट्रिंग
इवेंट हैंडलर को पास की जाने वाली डिक्शनरी के
message
एट्रिब्यूट में दी जाने वाली वैल्यू.
SetRequestHeader
बताए गए नाम के अनुरोध के हेडर को बताई गई वैल्यू पर सेट करता है. अगर बताए गए नाम का हेडर पहले मौजूद नहीं है, तो एक नया हेडर बना दिया जाता है. हेडर के नाम की तुलना हमेशा केस-इनसेंसिटिव होती है. हर अनुरोध के हेडर का नाम, हर अनुरोध में सिर्फ़ एक बार आता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
void
constructor
फ़ंक्शन ऐसा दिखता है:(arg: SetRequestHeader) => {...}
-
आर्ग्युमेंट
-
returns
-
-
नाम
स्ट्रिंग
एचटीटीपी अनुरोध के हेडर का नाम.
-
value
स्ट्रिंग
एचटीटीपी अनुरोध के हेडर की वैल्यू.
Stage
Enum
"onBeforeRequest"
"onBeforeSendHeaders"
"onHeadersReceived"
इवेंट
onMessage
chrome.declarativeWebRequest.onMessage.addListener(
callback: function,
)
यह तब ट्रिगर होता है, जब declarativeWebRequest.SendMessageToExtension
के ज़रिए डिक्लेरेटिव वेब अनुरोध एपीआई की कार्रवाई से मैसेज भेजा जाता है.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(details: object) => void
-
जानकारी
ऑब्जेक्ट
-
documentId
स्ट्रिंग ज़रूरी नहीं
अनुरोध करने वाले दस्तावेज़ का यूयूआईडी.
-
documentLifecycle
दस्तावेज़ की लाइफ़साइकल.
-
frameId
नंबर
वैल्यू 0 बताती है कि अनुरोध मुख्य फ़्रेम में किया गया है. पॉज़िटिव वैल्यू, उस सबफ़्रेम के आईडी को दिखाती है जिसमें अनुरोध किया गया है. अगर किसी (सब-)फ़्रेम का दस्तावेज़ लोड किया गया है (
type
का साइज़main_frame
याsub_frame
है), तोframeId
इस फ़्रेम के आईडी को दिखाता है, न कि आउटर फ़्रेम का आईडी. फ़्रेम आईडी, टैब में यूनीक होते हैं. -
frameType
जिस तरह के फ़्रेम में नेविगेशन हुआ है.
-
ग्राहक का मैसेज
स्ट्रिंग
कॉलिंग स्क्रिप्ट से भेजा गया मैसेज.
-
method
स्ट्रिंग
एचटीटीपी का स्टैंडर्ड तरीका.
-
parentDocumentId
स्ट्रिंग ज़रूरी नहीं
इस फ़्रेम के मालिकाना हक वाले पैरंट दस्तावेज़ का यूयूआईडी. अगर कोई पैरंट न हो, तो यह सेट नहीं होता है.
-
parentFrameId
नंबर
अनुरोध भेजने वाले फ़्रेम को रैप करने वाले फ़्रेम का आईडी. अगर कोई पैरंट फ़्रेम मौजूद नहीं है, तो -1 पर सेट करें.
-
requestId
स्ट्रिंग
अनुरोध का आईडी. ब्राउज़र सेशन में अनुरोध का आईडी यूनीक होता है. नतीजे के तौर पर, इनका इस्तेमाल एक ही अनुरोध के अलग-अलग इवेंट को जोड़ने के लिए किया जा सकता है.
-
स्टेज
नेटवर्क अनुरोध का वह चरण जिसके दौरान इवेंट ट्रिगर हुआ.
-
tabId
नंबर
उस टैब का आईडी जिसमें अनुरोध किया जाता है. अगर अनुरोध किसी टैब से नहीं जुड़ा है, तो -1 पर सेट करें.
-
timeStamp
नंबर
इस सिग्नल के ट्रिगर होने का समय, यानी epoch के बाद से मिलीसेकंड में.
-
अनुरोध किए गए संसाधन का इस्तेमाल कैसे किया जाएगा.
-
यूआरएल
स्ट्रिंग
-
-
onRequest
एलान वाले इवेंट का एपीआई उपलब्ध कराता है. इसमें addRules
, removeRules
, और getRules
शामिल हैं.
स्वास्थ्य से जुड़ी स्थितियां
कार्रवाइयां