ब्यौरा
कुकी के बारे में क्वेरी करने, उनमें बदलाव करने, और उनमें बदलाव होने पर सूचना पाने के लिए, chrome.cookies
API का इस्तेमाल करें.
अनुमतियां
cookies
कुकी एपीआई का इस्तेमाल करने के लिए, अपने यहां "cookies"
अनुमति का एलान करें
जिन होस्ट की कुकी आपको चाहिए उनके लिए होस्ट की अनुमतियों के साथ मेनिफ़ेस्ट
ऐक्सेस करने के लिए. उदाहरण के लिए:
{
"name": "My extension",
...
"host_permissions": [
"*://*.google.com/"
],
"permissions": [
"cookies"
],
...
}
विभाजन
सेगमेंट में बांटी गई कुकी, किसी साइट को यह मार्क करने देती हैं कि कुछ कुकी को टॉप लेवल फ़्रेम का ऑरिजिन. इसका मतलब है कि उदाहरण के लिए, अगर साइट A को साइट B में iframe का इस्तेमाल करके एम्बेड किया गया है और साइट C, तो A से पार्टिशन की गई कुकी के एम्बेड किए गए वर्शन के B और C पर अलग-अलग मान हो सकते हैं.
डिफ़ॉल्ट रूप से, एपीआई के सभी तरीके उन कुकी पर काम करते हैं जो सेगमेंट में नहीं बांटी गई हैं. कॉन्टेंट बनाने
इस व्यवहार को बदलने के लिए, partitionKey
प्रॉपर्टी का इस्तेमाल किया जा सकता है.
एक्सटेंशन के बंटवारे से होने वाले सामान्य असर के बारे में जानने के लिए, यह देखें डिवाइस का स्टोरेज और कुकी.
उदाहरण
कुकी एपीआई का इस्तेमाल करने का आसान उदाहरण यहां दिया गया है: examples/api/cookies डायरेक्ट्री शामिल नहीं है. अन्य उदाहरणों के लिए और देखने में सहायता के लिए सोर्स कोड के लिए, सैंपल देखें.
टाइप
Cookie
यह एचटीटीपी कुकी के बारे में जानकारी दिखाता है.
प्रॉपर्टी
-
डोमेन
स्ट्रिंग
कुकी का डोमेन (जैसे कि "www.google.com", "example.com").
-
expirationDate
नंबर वैकल्पिक
UNIX epoch के बाद से सेकंड की संख्या के रूप में कुकी के खत्म होने की तारीख. सेशन कुकी के लिए नहीं दिया जाता है.
-
hostOnly
बूलियन
अगर कुकी, सिर्फ़ होस्ट वाली कुकी है (यानी किसी अनुरोध का होस्ट, कुकी के डोमेन से पूरी तरह मेल खाना चाहिए).
-
httpOnly
बूलियन
अगर कुकी को HttpOnly के तौर पर मार्क किया गया है, तो वैल्यू 'सही' होगी. इसका मतलब है कि क्लाइंट-साइड स्क्रिप्ट को कुकी को ऐक्सेस नहीं किया जा सकता.
-
नाम
स्ट्रिंग
कुकी का नाम.
-
partitionKey
CookiePartitionKey ज़रूरी नहीं
Chrome 119 और इसके बाद के वर्शनपार्टिशन्ड एट्रिब्यूट की मदद से, कुकी पढ़ने या उनमें बदलाव करने के लिए पार्टिशन कुंजी.
-
पाथ
स्ट्रिंग
कुकी का पाथ.
-
sameSiteChrome 51 और उसके बाद के वर्शन
कुकी का एक ही साइट स्टेटस (यानी कुकी को दूसरी साइट से किए गए अनुरोधों के साथ भेजा गया है या नहीं).
-
सुरक्षित
बूलियन
अगर कुकी को सुरक्षित के तौर पर मार्क किया गया है, तो वैल्यू 'सही' होगी. इसका मतलब है कि कुकी का दायरा सुरक्षित चैनलों, खास तौर पर एचटीटीपीएस तक सीमित है.
-
सत्र
बूलियन
अगर कुकी, खत्म होने की तारीख वाली स्थायी कुकी के उलट है, तो यह एक सेशन कुकी है.
-
storeId
स्ट्रिंग
उस कुकी स्टोर का आईडी जिसमें यह कुकी है, जैसा कि getAllCookieStores() में दिया गया है.
-
value
स्ट्रिंग
कुकी की वैल्यू.
CookieDetails
कुकी की पहचान करने के लिए जानकारी.
प्रॉपर्टी
-
नाम
स्ट्रिंग
उस कुकी का नाम जिसे ऐक्सेस करना है.
-
partitionKey
CookiePartitionKey ज़रूरी नहीं
Chrome 119 और इसके बाद के वर्शनपार्टिशन्ड एट्रिब्यूट की मदद से, कुकी पढ़ने या उनमें बदलाव करने के लिए पार्टिशन कुंजी.
-
storeId
स्ट्रिंग ज़रूरी नहीं
उस कुकी स्टोर का आईडी जिसमें कुकी को खोजना है. डिफ़ॉल्ट रूप से, एक्ज़ीक्यूशन के मौजूदा कॉन्टेक्स्ट के कुकी स्टोर का इस्तेमाल किया जाएगा.
-
url
स्ट्रिंग
वह यूआरएल जिससे कुकी को ऐक्सेस करना है. यह आर्ग्युमेंट एक पूरा यूआरएल हो सकता है. इस स्थिति में, यूआरएल पाथ के बाद वाले किसी भी डेटा (जैसे कि क्वेरी स्ट्रिंग) को अनदेखा कर दिया जाता है. अगर मेनिफ़ेस्ट फ़ाइल में इस यूआरएल के लिए होस्ट की अनुमतियां नहीं दी गई हैं, तो एपीआई कॉल पूरा नहीं हो पाएगा.
CookiePartitionKey
यह कुकी के सेगमेंट को सेगमेंट में बांटने वाली कुंजी के बारे में बताती है.
प्रॉपर्टी
-
hasCrossSiteAncestor
बूलियन ज़रूरी नहीं
मंज़ूरी बाकी हैयह बताता है कि कुकी को क्रॉस-क्रॉस साइट कॉन्टेक्स्ट में सेट किया गया था. यह किसी दूसरी साइट के कॉन्टेक्स्ट में एम्बेड की गई टॉप लेवल साइट को, उसी साइट के कॉन्टेक्स्ट में टॉप लेवल साइट की सेट की गई कुकी ऐक्सेस करने से रोकता है.
-
topLevelSite
स्ट्रिंग ज़रूरी नहीं
वह टॉप लेवल साइट जिसमें पार्टिशन की गई कुकी उपलब्ध है.
CookieStore
यह ब्राउज़र में कुकी स्टोर दिखाता है. उदाहरण के लिए, गुप्त मोड वाली विंडो, गुप्त मोड वाली विंडो से अलग कुकी स्टोर का इस्तेमाल करती है.
प्रॉपर्टी
-
आईडी
स्ट्रिंग
कुकी स्टोर के लिए यूनीक आइडेंटिफ़ायर.
-
tabIds
नंबर[]
इस कुकी स्टोर को शेयर करने वाले सभी ब्राउज़र टैब के आइडेंटिफ़ायर.
OnChangedCause
कुकी के बदलने की वजह. अगर कोई कुकी डाली गई थी या "chrome.cookies.remove" पर अश्लील कॉल करके, कुकी को हटाया गया था, तो इसकी वजह "वजह" है "अश्लील" होगा. अगर समयसीमा खत्म होने की वजह से कुकी अपने-आप हट गई है, तो "वजह" "समयसीमा खत्म हो जाएगी". अगर कुकी को समयसीमा खत्म होने की तारीख के साथ ओवरराइट होने की वजह से हटाया गया है, तो "वजह" इसे "expired_overwrite" पर सेट किया जाएगा. अगर कचरा इकट्ठा करने की वजह से किसी कुकी को अपने-आप हटा दिया गया था, तो "वजह" "हटा" दिया जाएगा. अगर "सेट" की वजह से कोई कुकी अपने-आप हट गई थी इसे ओवरराइट कर दिया, "वजह" "ओवरराइट" हो जाएगा. इसके हिसाब से अपने जवाब का प्लान बनाएं.
Enum
SameSiteStatus
कुकी की 'SameSite' (https://tools.ietf.org/html/draft-west-first-party-cookies). 'no_restriction' 'SameSite=None', 'lax' वाली कुकी सेट से मेल खाता है 'SameSite=Lax' और 'strict' को 'SameSite=Strict' पर सेट करें. 'तय नहीं है' यह ऐसे कुकी सेट से मेल खाता है जिसमें SameSite एट्रिब्यूट नहीं है.
Enum
तरीके
get()
chrome.cookies.get(
details: CookieDetails,
callback?: function,
)
एक कुकी के बारे में जानकारी हासिल करता है. अगर दिए गए यूआरएल के लिए एक ही नाम की एक से ज़्यादा कुकी मौजूद हैं, तो सबसे लंबे पाथ वाली कुकी दी जाएगी. समान संख्यात्मक विश्लेषण वाली कुकी के लिए, सबसे पहले बनाए जाने वाले समय की कुकी दिखाई जाएगी.
पैरामीटर
रिटर्न
-
Promise<Cookie | तय नहीं है>
Chrome 88 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
getAll()
chrome.cookies.getAll(
details: object,
callback?: function,
)
एक ही कुकी स्टोर से ऐसी सभी कुकी लाता है जो दी गई जानकारी से मेल खाती हैं. दिखाई गई कुकी को क्रम में लगाया जाएगा, जिसमें सबसे लंबे पाथ का पाथ सबसे पहले होगा. अगर कई कुकी की संख्यात्मक विश्लेषण के बराबर है, तो उन्हें बनाने का समय सबसे पहले होगा. यह तरीका सिर्फ़ उन डोमेन की कुकी हासिल करता है जिनके लिए एक्सटेंशन के पास होस्ट की अनुमतियां हैं.
पैरामीटर
-
विवरण
ऑब्जेक्ट
वापस लाई जा रही कुकी को फ़िल्टर करने की जानकारी.
-
डोमेन
स्ट्रिंग ज़रूरी नहीं
यह नीति, वापस लाई गई कुकी को उन लोगों तक सीमित करती है जिनके डोमेन इस डोमेन से मेल खाते हैं या इसके सबडोमेन हैं.
-
नाम
स्ट्रिंग ज़रूरी नहीं
कुकी को नाम के हिसाब से फ़िल्टर करता है.
-
partitionKey
CookiePartitionKey ज़रूरी नहीं
Chrome 119 और इसके बाद के वर्शनपार्टिशन्ड एट्रिब्यूट की मदद से, कुकी पढ़ने या उनमें बदलाव करने के लिए पार्टिशन कुंजी.
-
पाथ
स्ट्रिंग ज़रूरी नहीं
वापस लाई गई कुकी को उन कुकी तक सीमित करता है जिनका पाथ इस स्ट्रिंग से पूरी तरह मेल खाता है.
-
सुरक्षित
बूलियन ज़रूरी नहीं
कुकी को उनकी सुरक्षित प्रॉपर्टी के हिसाब से फ़िल्टर करता है.
-
सत्र
बूलियन ज़रूरी नहीं
सेशन बनाम स्थायी कुकी को फ़िल्टर करता है.
-
storeId
स्ट्रिंग ज़रूरी नहीं
वह कुकी स्टोर जिससे कुकी वापस लाई जा सकती हैं. अगर इसे मिटाया जाता है, तो मौजूदा एक्ज़ीक्यूशन कॉन्टेक्स्ट कुकी स्टोर का इस्तेमाल किया जाएगा.
-
url
स्ट्रिंग ज़रूरी नहीं
वापस लाई गई कुकी को उन कुकी तक सीमित करता है जो दिए गए यूआरएल से मैच करेंगी.
-
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(cookies: Cookie[]) => void
-
कुकी का इस्तेमाल करता है
कुकी[]
कुकी की दी गई जानकारी से मेल खाने वाली सभी मौजूदा कुकी.
-
रिटर्न
-
Promise<Cookie[]>
Chrome 88 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
getAllCookieStores()
chrome.cookies.getAllCookieStores(
callback?: function,
)
सभी मौजूदा कुकी स्टोर की सूची बनाता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(cookieStores: CookieStore[]) => void
-
cookieStores
सभी मौजूदा कुकी स्टोर.
-
रिटर्न
-
Promise<CookieStore[]>
Chrome 88 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
remove()
chrome.cookies.remove(
details: CookieDetails,
callback?: function,
)
नाम के हिसाब से कुकी को मिटाता है.
पैरामीटर
-
विवरण
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(details?: object) => void
-
विवरण
ऑब्जेक्ट ज़रूरी नहीं
इसमें, हटाई गई कुकी की जानकारी होती है. अगर किसी वजह से कॉन्टेंट नहीं हटाया जा सका, तो यह "शून्य" हो जाएगा और
runtime.lastError
को सेट कर दिया जाएगा.-
नाम
स्ट्रिंग
हटाई गई कुकी का नाम.
-
partitionKey
CookiePartitionKey ज़रूरी नहीं
Chrome 119 और इसके बाद के वर्शनपार्टिशन्ड एट्रिब्यूट की मदद से, कुकी पढ़ने या उनमें बदलाव करने के लिए पार्टिशन कुंजी.
-
storeId
स्ट्रिंग
उस कुकी स्टोर का आईडी जहां से कुकी हटाई गई थी.
-
url
स्ट्रिंग
हटाई गई कुकी से जुड़ा यूआरएल.
-
-
रिटर्न
-
Promise<object | तय नहीं है>
Chrome 88 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
set()
chrome.cookies.set(
details: object,
callback?: function,
)
दिए गए कुकी डेटा के साथ कुकी सेट करता है; मिलती-जुलती कुकी मौजूद होने पर, उन्हें ओवरराइट किया जा सकता है.
पैरामीटर
-
विवरण
ऑब्जेक्ट
सेट की जा रही कुकी के बारे में जानकारी.
-
डोमेन
स्ट्रिंग ज़रूरी नहीं
कुकी का डोमेन. अगर इसे छोड़ा जाता है, तो यह कुकी, सिर्फ़ होस्ट वाली कुकी बन जाती है.
-
expirationDate
नंबर वैकल्पिक
UNIX epoch के बाद से सेकंड की संख्या के रूप में कुकी के खत्म होने की तारीख. अगर इसे छोड़ा जाता है, तो यह कुकी, सेशन कुकी बन जाती है.
-
httpOnly
बूलियन ज़रूरी नहीं
कुकी को HttpOnly के तौर पर मार्क किया जाना चाहिए या नहीं. डिफ़ॉल्ट तौर पर, 'गलत' पर सेट होती है.
-
नाम
स्ट्रिंग ज़रूरी नहीं
कुकी का नाम. अगर इसे छोड़ा जाता है, तो यह डिफ़ॉल्ट रूप से खाली होता है.
-
partitionKey
CookiePartitionKey ज़रूरी नहीं
Chrome 119 और इसके बाद के वर्शनपार्टिशन्ड एट्रिब्यूट की मदद से, कुकी पढ़ने या उनमें बदलाव करने के लिए पार्टिशन कुंजी.
-
पाथ
स्ट्रिंग ज़रूरी नहीं
कुकी का पाथ. यूआरएल पैरामीटर के पाथ वाले हिस्से पर डिफ़ॉल्ट रूप से सेट होता है.
-
sameSite
SameSiteStatus ज़रूरी नहीं
Chrome 51 और उसके बाद वाले वर्शन के लिएकुकी का एक ही साइट पर होना. डिफ़ॉल्ट रूप से "अज्ञात" होता है. इसका मतलब है कि अगर इसे हटाया जाता है, तो कुकी को SameSite एट्रिब्यूट को तय किए बिना सेट किया जा सकता है.
-
सुरक्षित
बूलियन ज़रूरी नहीं
कुकी को सुरक्षित के तौर पर मार्क किया जाना चाहिए या नहीं. डिफ़ॉल्ट तौर पर, 'गलत' पर सेट होती है.
-
storeId
स्ट्रिंग ज़रूरी नहीं
उस कुकी स्टोर का आईडी जिसमें कुकी सेट करनी है. डिफ़ॉल्ट रूप से, कुकी को मौजूदा एक्ज़ीक्यूशन कॉन्टेक्स्ट के कुकी स्टोर में सेट किया जाता है.
-
url
स्ट्रिंग
कुकी की सेटिंग के साथ जोड़ने के लिए अनुरोध-यूआरआई. यह वैल्यू, बनाई गई कुकी के डिफ़ॉल्ट डोमेन और पाथ वैल्यू पर असर डाल सकती है. अगर मेनिफ़ेस्ट फ़ाइल में इस यूआरएल के लिए होस्ट की अनुमतियां नहीं दी गई हैं, तो एपीआई कॉल पूरा नहीं हो पाएगा.
-
value
स्ट्रिंग ज़रूरी नहीं
कुकी की वैल्यू. अगर इसे छोड़ा जाता है, तो यह डिफ़ॉल्ट रूप से खाली होता है.
-
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(cookie?: Cookie) => void
-
कुकी
कुकी ज़रूरी नहीं
इसमें सेट की गई कुकी की जानकारी होती है. अगर किसी वजह से सेटिंग फ़ेल हो जाती है, तो यह "शून्य" हो जाएगा और
runtime.lastError
को सेट कर दिया जाएगा.
-
रिटर्न
-
Promise<Cookie | तय नहीं है>
Chrome 88 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
इवेंट
onChanged
chrome.cookies.onChanged.addListener(
callback: function,
)
कुकी सेट किए जाने या हटाए जाने पर सक्रिय होता है. ध्यान रखें कि किसी कुकी की प्रॉपर्टी अपडेट करना दो चरणों वाली प्रोसेस के तौर पर लागू होता है: अपडेट की जाने वाली कुकी पहले पूरी तरह से हटा दी जाती है और "वजह" के साथ एक सूचना जनरेट होती है "ओवरराइट" का इस्तेमाल करें को अपनाएं. इसके बाद, अपडेट की गई वैल्यू का इस्तेमाल करके एक नई कुकी लिखी जाती है और "वजह" के साथ दूसरी सूचना जनरेट की जाती है "अश्लील" हो.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(changeInfo: object) => void
-
changeInfo
ऑब्जेक्ट
-
कारण
कुकी के बदलने की वजह.
-
कुकी
सेट की गई या हटाई गई कुकी के बारे में जानकारी.
-
निकाला गया
बूलियन
कुकी को हटा दिए जाने पर वैल्यू 'सही' होती है.
-
-