ब्यौरा
किसी उपयोगकर्ता की लोकल प्रोफ़ाइल से ब्राउज़िंग डेटा हटाने के लिए, chrome.browsingData एपीआई का इस्तेमाल करें.
अनुमतियां
browsingDataइस एपीआई का इस्तेमाल करने के लिए, आपको एक्सटेंशन मेनिफ़ेस्ट में "browsingData" अनुमति का एलान करना होगा.
{
"name": "My extension",
...
"permissions": [
"browsingData",
],
...
}
कॉन्सेप्ट और इस्तेमाल
इस एपीआई का सबसे आसान इस्तेमाल, उपयोगकर्ता के ब्राउज़िंग डेटा को समय के हिसाब से मिटाने के लिए किया जाता है.
आपके कोड में एक टाइमस्टैंप होना चाहिए, जो उस तारीख के बारे में बताता हो जिसके बाद का उपयोगकर्ता का ब्राउज़िंग डेटा हटा दिया जाना चाहिए. इस टाइमस्टैंप को Unix epoch के बाद से मिलीसेकंड की संख्या के तौर पर फ़ॉर्मैट किया जाता है. इसे getTime() तरीके का इस्तेमाल करके, JavaScript Date ऑब्जेक्ट से वापस पाया जा सकता है.
उदाहरण के लिए, पिछले हफ़्ते के उपयोगकर्ता के सभी ब्राउज़िंग डेटा को मिटाने के लिए, इस तरह से कोड लिखा जा सकता है:
var callback = function () {
// Do something clever here once data has been removed.
};
var millisecondsPerWeek = 1000 * 60 * 60 * 24 * 7;
var oneWeekAgo = (new Date()).getTime() - millisecondsPerWeek;
browser.browsingData.remove({
"since": oneWeekAgo
}, {
"appcache": true,
"cache": true,
"cacheStorage": true,
"cookies": true,
"downloads": true,
"fileSystems": true,
"formData": true,
"history": true,
"indexedDB": true,
"localStorage": true,
"passwords": true,
"serviceWorkers": true,
"webSQL": true
}, callback);
browser.browsingData.remove() तरीके का इस्तेमाल करके, एक ही कॉल से कई तरह का ब्राउज़िंग डेटा हटाया जा सकता है. यह तरीका, कई अन्य तरीकों को कॉल करने की तुलना में काफ़ी तेज़ होगा. हालांकि, अगर आपको सिर्फ़ किसी खास तरह का ब्राउज़िंग डेटा (उदाहरण के लिए, कुकी) मिटाना है, तो ज़्यादा सटीक तरीके इस्तेमाल करें. इनसे आपको JSON से भरे कॉल के बजाय, आसानी से पढ़ा जा सकने वाला विकल्प मिलता है.
var callback = function () {
// Do something clever here once data has been removed.
};
var millisecondsPerWeek = 1000 * 60 * 60 * 24 * 7;
var oneWeekAgo = (new Date()).getTime() - millisecondsPerWeek;
browser.browsingData.removeCookies({
"since": oneWeekAgo
}, callback);
अगर उपयोगकर्ता अपना डेटा सिंक कर रहा है, तो browser.browsingData.remove(), सिंक खाते के लिए कुकी को मिटाने के बाद, उसे अपने-आप फिर से बना सकता है. ऐसा इसलिए किया जाता है, ताकि सिंक करने की सुविधा काम करती रहे और सर्वर पर मौजूद डेटा को मिटाया जा सके. हालांकि, ज़्यादा खास browser.browsingData.removeCookies() का इस्तेमाल, सिंक किए गए खाते की कुकी मिटाने के लिए किया जा सकता है. इस मामले में, सिंक करने की सुविधा रोक दी जाएगी.
चुनिंदा ऑरिजिन
किसी खास ऑरिजिन का डेटा हटाने या ऑरिजिन के किसी सेट को मिटाए जाने से रोकने के लिए, RemovalOptions.origins और RemovalOptions.excludeOrigins पैरामीटर का इस्तेमाल किया जा सकता है. इन्हें सिर्फ़ कुकी, कैश मेमोरी, और स्टोरेज (CacheStorage, FileSystems, IndexedDB, LocalStorage, ServiceWorkers, और WebSQL) पर लागू किया जा सकता है.
browser.browsingData.remove({
"origins": ["https://www.example.com"]
}, {
"cacheStorage": true,
"cookies": true,
"fileSystems": true,
"indexedDB": true,
"localStorage": true,
"serviceWorkers": true,
"webSQL": true
}, callback);
ऑरिजिन के टाइप
एपीआई के विकल्प ऑब्जेक्ट में originTypes प्रॉपर्टी जोड़ने से, यह तय किया जा सकता है कि किस तरह के ऑरिजिन पर असर पड़ना चाहिए. ऑरिजिन को तीन कैटगरी में बांटा गया है:
unprotectedWebमें उन वेबसाइटों के सामान्य मामले शामिल हैं जिन पर उपयोगकर्ता बिना कोई खास कार्रवाई किए विज़िट करते हैं. अगर आपनेoriginTypesकी जानकारी नहीं दी है, तो एपीआई डिफ़ॉल्ट रूप से, असुरक्षित वेब ऑरिजिन से डेटा हटा देता है.protectedWebमें वे वेब ऑरिजिन शामिल हैं जिन्हें होस्ट किए गए ऐप्लिकेशन के तौर पर इंस्टॉल किया गया है. उदाहरण के लिए, Angry Birds इंस्टॉल करने से, ऑरिजिनhttps://chrome.angrybirds.comसुरक्षित हो जाता है और उसेunprotectedWebकैटगरी से हटा दिया जाता है. इन ऑरिजिन के लिए डेटा मिटाते समय सावधानी बरतें: पक्का करें कि आपके उपयोगकर्ताओं को पता हो कि उन्हें क्या मिल रहा है. ऐसा इसलिए, क्योंकि इससे उनके गेम का डेटा हमेशा के लिए मिट जाएगा. कोई भी सूअर के छोटे घरों को ज़रूरत से ज़्यादा बार नहीं गिराना चाहता.extension,chrome-extensions:स्कीम के तहत ओरिजिन को कवर करता है. एक्सटेंशन का डेटा हटाते समय भी आपको बहुत सावधानी बरतनी चाहिए.
पिछले उदाहरण में बदलाव करके, सिर्फ़ सुरक्षित वेबसाइटों का डेटा हटाया जा सकता है. इसके लिए, यह तरीका अपनाएं:
var callback = function () {
// Do something clever here once data has been removed.
};
var millisecondsPerWeek = 1000 * 60 * 60 * 24 * 7;
var oneWeekAgo = (new Date()).getTime() - millisecondsPerWeek;
browser.browsingData.remove({
"since": oneWeekAgo,
"originTypes": {
"protectedWeb": true
}
}, {
"appcache": true,
"cache": true,
"cacheStorage": true,
"cookies": true,
"downloads": true,
"fileSystems": true,
"formData": true,
"history": true,
"indexedDB": true,
"localStorage": true,
"passwords": true,
"serviceWorkers": true,
"webSQL": true
}, callback);
उदाहरण
इस एपीआई को आज़माने के लिए, chrome-extension-samples रिपॉज़िटरी से browsingData API का उदाहरण इंस्टॉल करें.
टाइप
DataTypeSet
डेटा टाइप का एक सेट. अगर डेटा टाइप मौजूद नहीं है, तो उसे false माना जाता है.
प्रॉपर्टी
-
appcache
बूलियन ज़रूरी नहीं
Chrome 152 के बाद से इस्तेमाल नहीं किया जा सकताAppcache के लिए सहायता की सुविधा हटा दी गई है. इस डेटा टाइप को अनदेखा कर दिया जाएगा.
वेबसाइटों के ऐप्लिकेशन कैश.
-
कैश मेमोरी
बूलियन ज़रूरी नहीं
ब्राउज़र की कैश मेमोरी.
-
cacheStorage
बूलियन ज़रूरी नहीं
Chrome 72+ browser.* Chrome 148 सेकैश मेमोरी
-
कुकी का इस्तेमाल करता है
बूलियन ज़रूरी नहीं
ब्राउज़र की कुकी.
-
डाउनलोड
बूलियन ज़रूरी नहीं
ब्राउज़र की डाउनलोड सूची.
-
fileSystems
बूलियन ज़रूरी नहीं
वेबसाइटों के फ़ाइल सिस्टम.
-
formData
बूलियन ज़रूरी नहीं
ब्राउज़र में सेव किया गया फ़ॉर्म डेटा.
-
इतिहास
बूलियन ज़रूरी नहीं
ब्राउज़र का इतिहास.
-
indexedDB
बूलियन ज़रूरी नहीं
वेबसाइटों का IndexedDB डेटा.
-
localStorage
बूलियन ज़रूरी नहीं
वेबसाइटों का लोकल स्टोरेज डेटा.
-
पासवर्ड
बूलियन ज़रूरी नहीं
Chrome 144 के बाद से, इस सुविधा का इस्तेमाल नहीं किया जा सकताएक्सटेंशन की मदद से पासवर्ड मिटाने की सुविधा हटा दी गई है. इस डेटा टाइप को अनदेखा कर दिया जाएगा.
सेव किए गए पासवर्ड.
-
pluginData
बूलियन ज़रूरी नहीं
Chrome 88 के बाद से, इस सुविधा का इस्तेमाल नहीं किया जा सकताFlash के लिए सहायता की सुविधा हटा दी गई है. इस डेटा टाइप को अनदेखा कर दिया जाएगा.
प्लग इन का डेटा.
-
serverBoundCertificates
बूलियन ज़रूरी नहीं
Chrome 76 के बाद से इस्तेमाल नहीं किया जा सकतासर्वर से जुड़े सर्टिफ़िकेट के लिए सहायता हटा दी गई है. इस डेटा टाइप को अनदेखा कर दिया जाएगा.
सर्वर से जुड़े सर्टिफ़िकेट.
-
serviceWorkers
बूलियन ज़रूरी नहीं
सर्विस वर्कर.
-
webSQL
बूलियन ज़रूरी नहीं
Chrome 152 के बाद से इस्तेमाल नहीं किया जा सकताWebSQL की सुविधा हटा दी गई है. इस डेटा टाइप को अनदेखा कर दिया जाएगा.
वेबसाइटों का WebSQL डेटा.
RemovalOptions
ऐसे विकल्प जिनसे यह तय होता है कि कौनसा डेटा हटाया जाएगा.
प्रॉपर्टी
-
excludeOrigins
string[] ज़रूरी नहीं
Chrome 74+ browser.* Chrome 148 के बाद सेइस सूची में मौजूद ऑरिजिन का डेटा नहीं मिटाया जाता.
originsके साथ इस्तेमाल नहीं किया जा सकता. यह सुविधा सिर्फ़ कुकी, स्टोरेज, और कैश मेमोरी के लिए उपलब्ध है. रजिस्टर किए जा सकने वाले पूरे डोमेन के लिए कुकी को बाहर रखा जाता है. -
originTypes
object ज़रूरी नहीं
एक ऐसा ऑब्जेक्ट जिसकी प्रॉपर्टी से यह तय होता है कि किस तरह के ऑरिजिन को मिटाया जाना चाहिए. अगर यह ऑब्जेक्ट तय नहीं किया गया है, तो डिफ़ॉल्ट रूप से सिर्फ़ "असुरक्षित" ऑरिजिन मिटाए जाते हैं. 'protectedWeb' या 'extensions' जोड़ने से पहले, कृपया पक्का करें कि आपको वाकई ऐप्लिकेशन का डेटा हटाना है.
-
एक्सटेंशन
बूलियन ज़रूरी नहीं
उपयोगकर्ता ने जो एक्सटेंशन और पैकेज किए गए ऐप्लिकेशन इंस्टॉल किए हैं (बहुत सावधानी बरतें!).
-
protectedWeb
बूलियन ज़रूरी नहीं
ऐसी वेबसाइटें जिन्हें होस्ट किए गए ऐप्लिकेशन के तौर पर इंस्टॉल किया गया है (सावधान रहें!).
-
unprotectedWeb
बूलियन ज़रूरी नहीं
सामान्य वेबसाइटें.
-
-
origins
[string, ...string[]] ज़रूरी नहीं
Chrome 74+ browser.* Chrome 148 के बाद सेअगर यह सूची मौजूद है, तो इसमें मौजूद ऑरिजिन का डेटा ही मिटाया जाता है. यह सुविधा सिर्फ़ कुकी, स्टोरेज, और कैश मेमोरी के लिए उपलब्ध है. रजिस्टर किए जा सकने वाले पूरे डोमेन के लिए कुकी मिटा दी जाती हैं.
-
प्रारंभ
number ज़रूरी नहीं
इस तारीख को या इसके बाद इकट्ठा किया गया डेटा हटाएं. इसे epoch के बाद से मिलीसेकंड में दिखाया जाता है. इसे JavaScript
Dateऑब्जेक्ट केgetTimeतरीके से ऐक्सेस किया जा सकता है. अगर यह वैल्यू मौजूद नहीं है, तो डिफ़ॉल्ट रूप से 0 पर सेट हो जाती है. इससे सारा ब्राउज़िंग डेटा हट जाएगा.
तरीके
remove()
browser.browsingData.remove(
options: RemovalOptions,
dataToRemove: DataTypeSet,
): Promise<void>
उपयोगकर्ता की प्रोफ़ाइल में सेव किए गए अलग-अलग तरह के ब्राउज़िंग डेटा को मिटाता है.
पैरामीटर
-
विकल्प
-
dataToRemove
डेटा टाइप का वह सेट जिसे हटाना है.
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*डेटा मिटाने की प्रोसेस पूरी होने पर, यह प्रॉमिस रिज़ॉल्व हो जाता है.
removeAppcache()
browser.browsingData.removeAppcache(
options: RemovalOptions,
): Promise<void>
Appcache के लिए सहायता की सुविधा हटा दी गई है. इस फ़ंक्शन का कोई असर नहीं होता.
वेबसाइटों का ऐप्लिकेशन कैश डेटा मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*वेबसाइटों का ऐप्लिकेशन कैश डेटा मिटाए जाने पर, यह समस्या हल हो जाती है.
removeCache()
browser.browsingData.removeCache(
options: RemovalOptions,
): Promise<void>
ब्राउज़र की कैश मेमोरी को मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*ब्राउज़र की कैश मेमोरी मिट जाने पर, यह प्रॉमिस रिज़ॉल्व हो जाता है.
removeCacheStorage()
browser.browsingData.removeCacheStorage(
options: RemovalOptions,
): Promise<void>
वेबसाइटों की कैश मेमोरी में सेव किया गया डेटा मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*वेबसाइटों की कैश मेमोरी मिटाने पर, यह समस्या हल हो जाती है.
removeCookies()
browser.browsingData.removeCookies(
options: RemovalOptions,
): Promise<void>
यह ब्राउज़र की कुकी और सर्वर से जुड़े सर्टिफ़िकेट मिटाता है. ये कुकी और सर्टिफ़िकेट, किसी खास समयावधि में बदले गए होते हैं.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*ब्राउज़र की कुकी और सर्वर से जुड़े सर्टिफ़िकेट मिटाए जाने पर, यह प्रॉमिस रिज़ॉल्व हो जाता है.
removeDownloads()
browser.browsingData.removeDownloads(
options: RemovalOptions,
): Promise<void>
इससे ब्राउज़र में डाउनलोड की गई फ़ाइलों की सूची मिट जाती है. हालांकि, डाउनलोड की गई फ़ाइलें नहीं मिटती हैं.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*ब्राउज़र में डाउनलोड की गई फ़ाइलों की सूची मिटाए जाने पर, यह समस्या हल हो जाती है.
removeFileSystems()
browser.browsingData.removeFileSystems(
options: RemovalOptions,
): Promise<void>
वेबसाइटों के फ़ाइल सिस्टम का डेटा मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*वेबसाइटों के फ़ाइल सिस्टम को खाली करने पर, यह समस्या हल हो जाती है.
removeFormData()
browser.browsingData.removeFormData(
options: RemovalOptions,
): Promise<void>
ब्राउज़र में सेव किया गया फ़ॉर्म डेटा (जानकारी अपने-आप भरने की सुविधा) मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*यह तब रिज़ॉल्व होता है, जब ब्राउज़र का फ़ॉर्म डेटा मिटा दिया जाता है.
removeHistory()
browser.browsingData.removeHistory(
options: RemovalOptions,
): Promise<void>
ब्राउज़र का इतिहास मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*ब्राउज़र का इतिहास मिटने पर, यह प्रॉमिस रिज़ॉल्व हो जाता है.
removeIndexedDB()
browser.browsingData.removeIndexedDB(
options: RemovalOptions,
): Promise<void>
वेबसाइटों का IndexedDB डेटा मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*वेबसाइटों का IndexedDB डेटा मिटाए जाने पर, यह समस्या हल हो जाती है.
removeLocalStorage()
browser.browsingData.removeLocalStorage(
options: RemovalOptions,
): Promise<void>
वेबसाइटों की लोकल मेमोरी में मौजूद डेटा को मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*वेबसाइटों का लोकल स्टोरेज खाली होने पर, यह समस्या हल हो जाती है.
removePasswords()
browser.browsingData.removePasswords(
options: RemovalOptions,
): Promise<void>
एक्सटेंशन की मदद से पासवर्ड मिटाने की सुविधा हटा दी गई है. इस फ़ंक्शन का कोई असर नहीं होता.
ब्राउज़र में सेव किए गए पासवर्ड मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*ब्राउज़र के पासवर्ड मिटाए जाने पर, यह प्रॉमिस रिज़ॉल्व हो जाता है.
removePluginData()
browser.browsingData.removePluginData(
options: RemovalOptions,
): Promise<void>
Flash के लिए सहायता की सुविधा हटा दी गई है. इस फ़ंक्शन का कोई असर नहीं होता.
प्लग इन का डेटा मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*प्लग इन का डेटा मिटने पर, यह प्रॉमिस रिज़ॉल्व हो जाता है.
removeServiceWorkers()
browser.browsingData.removeServiceWorkers(
options: RemovalOptions,
): Promise<void>
वेबसाइटों के सर्विस वर्कर को हटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*वेबसाइटों के सर्विस वर्कर को हटाए जाने पर, यह समस्या हल हो जाती है.
removeWebSQL()
browser.browsingData.removeWebSQL(
options: RemovalOptions,
): Promise<void>
WebSQL की सुविधा हटा दी गई है. इस फ़ंक्शन का कोई असर नहीं होता.
वेबसाइटों का WebSQL डेटा मिटाता है.
पैरामीटर
-
विकल्प
रिटर्न
-
वादा<शून्य>
Chrome 96+ Chrome 148 से browser.*वेबसाइटों के WebSQL डेटाबेस मिटाए जाने पर, यह प्रॉमिस रिज़ॉल्व हो जाता है.
settings()
browser.browsingData.settings(): Promise<object>
यह नीति बताती है कि 'ब्राउज़िंग डेटा मिटाएं' सेटिंग के यूज़र इंटरफ़ेस (यूआई) में, फ़िलहाल किस तरह का डेटा चुना गया है. ध्यान दें: इस एपीआई में शामिल कुछ डेटा टाइप, सेटिंग यूज़र इंटरफ़ेस (यूआई) में उपलब्ध नहीं हैं. साथ ही, कुछ यूज़र इंटरफ़ेस (यूआई) सेटिंग, यहां दिए गए एक से ज़्यादा डेटा टाइप को कंट्रोल करती हैं.
रिटर्न
-
Promise<object>
Chrome 96+ Chrome 148 से browser.*