refresh date: 2026-09-25 robots: noindex
شرح
از chrome.browsingData API برای برداشتن دادههای مرور از نمایه محلی کاربر استفاده کنید.
اجازهها
browsingDataمانیفست
برای استفاده از این API، باید اجازه «browsingData» را در مانیفست افزونه اعلام کنید.
{
"name": "My extension",
...
"permissions": [
"browsingData",
],
...
}
کاربرد
سادهترین مورد استفاده برای این میانای برنامهسازی کاربردی، سازوکاری مبتنی بر زمان برای پاک کردن دادههای مرور کاربر است.
کد شما باید مُهر زمانی ارائه دهد که تاریخ گذشتهای را نشان دهد که پساز آن دادههای مرور کاربر باید برداشته شود. این مُهر زمان بهصورت تعداد میلیثانیهها از تاریخ یونیکس قالببندی شده است (که میتوان آن را از شیء Date جاوا اسکریپت ازطریق روش getTime بازیابی کرد).
برای مثال، برای پاک کردن همه دادههای مرور کاربر از هفته گذشته، میتوانید کدی مانند زیر بنویسید:
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;
chrome.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);
روش chrome.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;
chrome.browsingData.removeCookies({
"since": oneWeekAgo
}, callback);
اگر کاربر درحال همگامسازی دادههایش باشد، chrome.browsingData.remove ممکن است پساز پاک کردن کوکی،
آن را بهطور خودکار برای حساب «همگامسازی» بازسازی کند. این کار برای اطمینان از این است که «همگامسازی» بتواند به کار خود ادامه دهد تا
دادهها درنهایت از سرور حذف شوند. بااینحال، از
chrome.browsingData.removeCookies خاصتر میتوان برای پاک کردن کوکی حساب «همگامسازی» استفاده کرد و در این حالت، «همگامسازی»
موقتاً متوقف خواهد شد.
مبدأهای خاص
برای برداشتن دادههای مربوط به مبدأی خاص یا برای مستثنی کردن مجموعهای از مبدأها از حذف، میتوانید از پارامترهای
RemovalOptions.origins و RemovalOptions.excludeOrigins استفاده کنید. این تنظیمات فقط برای کوکیها، حافظه پنهان، و فضای ذخیرهسازی (CacheStorage، FileSystems، IndexedDB، LocalStorage، ServiceWorkers، و WebSQL) اعمال میشود.
chrome.browsingData.remove({
"origins": ["https://www.example.com"]
}, {
"cacheStorage": true,
"cookies": true,
"fileSystems": true,
"indexedDB": true,
"localStorage": true,
"serviceWorkers": true,
"webSQL": true
}, callback);
انواع مبدأ
افزودن ویژگی originTypes به شیء گزینههای API به شما امکان میدهد مشخص کنید کدام نوع از
مبدأها باید تحت تأثیر قرار گیرند. درحالحاضر، مبدأها به سه دسته تقسیم میشوند:
unprotectedWebمورد کلی وبسایتهایی را پوشش میدهد که کاربران بدون انجام هیچ اقدام خاصی از آنها بازدید میکنند. اگرoriginTypesرا مشخص نکنید، API بهطور پیشفرض دادهها را از مبدأهای وب محافظتنشده برمیدارد.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;
chrome.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);
مثالها
برای امتحان کردن این میانای برنامهسازی کاربردی، نمونه browsingData API را از مخزن chrome-extension-samples نصب کنید.
انواع
DataTypeSet
مجموعهای از انواع داده. انواع دادههای موجود نیست بهعنوان false تفسیر میشوند.
مشخصات
-
حافظه نهان برنامه
بولی اختیاری
از Chrome 152 منسوخ شده استپشتیبانی از appcache برداشته شده است. این نوع داده نادیده گرفته خواهد شد.
حافظه پنهان برنامه وبسایتها.
-
حفظ کردن
بولی اختیاری
حافظه نهان مرورگر.
-
cacheStorage
بولی اختیاری
Chrome نسخه ۷۲ به بالافضای ذخیرهسازی حافظه پنهان
-
کوکیها
بولی اختیاری
کوکیهای مرورگر.
-
بارگیریها
بولی اختیاری
فهرست بارگیری مرورگر.
-
fileSystems
بولی اختیاری
سیستمهای فایل وبسایتها.
-
formData
بولی اختیاری
دادههای فرم ذخیرهشده مرورگر.
-
سابقه
بولی اختیاری
سابقه مرورگر.
-
indexedDB
بولی اختیاری
دادههای IndexedDB وبسایتها.
-
localStorage
بولی اختیاری
دادههای فضای ذخیرهسازی محلی وبسایتها.
-
گذرواژهها
بولی اختیاری
از Chrome 144 منسوخ شده استپشتیبانی از حذف گذرواژه ازطریق افزونهها برداشته شده است. این نوع داده نادیده گرفته خواهد شد.
گذرواژههای ذخیرهشده.
-
pluginData
بولی اختیاری
از Chrome 88 منسوخ شده استپشتیبانی از Flash برداشته شده است. این نوع داده نادیده گرفته خواهد شد.
دادههای افزایهها.
-
serverBoundCertificates
بولی اختیاری
از Chrome 76 منسوخ شده استپشتیبانی از گواهینامههای محدود به سرور برداشته شده است. این نوع داده نادیده گرفته خواهد شد.
گواهینامههای محدود به سرور.
-
serviceWorkers
بولی اختیاری
عاملان خدماتی.
-
webSQL
بولی اختیاری
از Chrome 152 منسوخ شده استپشتیبانی از WebSQL برداشته شده است. این نوع داده نادیده گرفته خواهد شد.
دادههای WebSQL وبسایتها.
RemovalOptions
گزینههایی که دقیقاً تعیین میکنند چه دادههایی برداشته خواهد شد.
مشخصات
-
excludeOrigins
رشته[] اختیاری
Chrome نسخه ۷۴ و بالاتروقتی وجود داشته باشد، دادههای مربوط به مبدأهای موجود در این فهرست از حذف مستثنی میشود. نمیتوانید از آن همراه با
originsاستفاده کنید. فقط برای کوکیها، فضای ذخیرهسازی، و حافظه پنهان پشتیبانی میشود. کوکیها برای کل دامنه قابلثبت مستثنی میشوند. -
originTypes
شیء اختیاری
شیئی که ویژگیهای آن مشخص میکند کدام نوع مبدأ باید پاک شود. اگر این شیء مشخص نشده باشد، بهطور پیشفرض فقط مبدأهای «محافظتنشده» پاک میشود. لطفاً قبلاز افزودن «protectedWeb» یا «extensions»، مطمئن شوید که واقعاً میخواهید دادههای برنامه را بردارید.
-
برنامهٔ افزودنی
بولی اختیاری
افزونهها و برنامههای بستهبندیشدهای که کاربر نصب کرده است (باید _واقعاً_ مراقب باشید!).
-
protectedWeb
بولی اختیاری
وبسایتهایی که بهعنوان برنامههای میزبانیشده نصب شدهاند (مراقب باشید!).
-
unprotectedWeb
بولی اختیاری
وبسایتهای عادی.
-
-
مبدأها
[رشته، ...رشته[]] اختیاری
Chrome نسخه ۷۴ و بالاتروقتی وجود داشته باشد، فقط دادههای مربوط به مبدأهای موجود در این فهرست حذف میشود. فقط برای کوکیها، فضای ذخیرهسازی، و حافظه پنهان پشتیبانی میشود. کوکیها برای کل دامنه قابلثبت پاک میشوند.
-
از
شماره اختیاری
دادههای جمعآوریشده در این تاریخ یا پساز آن را بردارید، که برحسب میلیثانیه از مبدأ زمانی نشان داده میشود (ازطریق روش
getTimeشیءDateجاوا اسکریپت قابلدسترسی است). اگر وجود نداشته باشد، بهطور پیشفرض ۰ است (که همه دادههای مرور را حذف میکند).
روشها
remove()
chrome.browsingData.remove(
options: RemovalOptions,
dataToRemove: DataTypeSet,
callback?: function,
): Promise<void>
انواع مختلف دادههای مرور ذخیرهشده در نمایه کاربر را پاک میکند.
پارامترها
-
گزینهها
-
dataToRemove
مجموعه انواع داده برای حذف.
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی حذف تکمیل شد، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeAppcache()
chrome.browsingData.removeAppcache(
options: RemovalOptions,
callback?: function,
): Promise<void>
پشتیبانی از appcache برداشته شده است. این عملکرد تأثیری ندارد.
دادههای حافظه پنهان برنامه وبسایتها را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی دادههای appcache وبسایتها پاک شود، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeCache()
chrome.browsingData.removeCache(
options: RemovalOptions,
callback?: function,
): Promise<void>
حافظه پنهان مرورگر را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی حافظه نهان مرورگر پاک شود، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeCacheStorage()
chrome.browsingData.removeCacheStorage(
options: RemovalOptions,
callback?: function,
): Promise<void>
دادههای فضای ذخیرهسازی حافظه نهان وبسایتها را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی فضای ذخیرهسازی حافظه نهان وبسایتها پاک شود، مشکل برطرف میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeCookies()
chrome.browsingData.removeCookies(
options: RemovalOptions,
callback?: function,
): Promise<void>
کوکیهای مرورگر و گواهیهای محدود به سرور را که در بازه زمانی خاصی اصلاح شدهاند پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی کوکیهای مرورگر و گواهیهای محدود به سرور پاک شوند، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeDownloads()
chrome.browsingData.removeDownloads(
options: RemovalOptions,
callback?: function,
): Promise<void>
فهرست فایلهای بارگیریشده مرورگر را پاک میکند (خود فایلهای بارگیریشده را پاک نمیکند).
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی فهرست فایلهای بارگیریشده مرورگر پاک شود، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeFileSystems()
chrome.browsingData.removeFileSystems(
options: RemovalOptions,
callback?: function,
): Promise<void>
دادههای سیستم فایل وبسایتها را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی سیستمهای فایل وبسایتها پاک شده باشد، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeFormData()
chrome.browsingData.removeFormData(
options: RemovalOptions,
callback?: function,
): Promise<void>
دادههای فرم ذخیرهشده مرورگر (تکمیل خودکار) را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی دادههای فرم مرورگر پاک شود، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeHistory()
chrome.browsingData.removeHistory(
options: RemovalOptions,
callback?: function,
): Promise<void>
سابقه مرورگر را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی سابقه مرورگر پاک شود، مشکل برطرف میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeIndexedDB()
chrome.browsingData.removeIndexedDB(
options: RemovalOptions,
callback?: function,
): Promise<void>
دادههای IndexedDB وبسایتها را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی دادههای IndexedDB وبسایتها پاک شود، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeLocalStorage()
chrome.browsingData.removeLocalStorage(
options: RemovalOptions,
callback?: function,
): Promise<void>
دادههای فضای ذخیرهسازی محلی وبسایتها را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی فضای ذخیرهسازی محلی وبسایتها پاک شود، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removePasswords()
chrome.browsingData.removePasswords(
options: RemovalOptions,
callback?: function,
): Promise<void>
پشتیبانی از حذف گذرواژه ازطریق افزونهها برداشته شده است. این عملکرد تأثیری ندارد.
گذرواژههای ذخیرهشده مرورگر را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی گذرواژههای مرورگر پاک شده باشد، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removePluginData()
chrome.browsingData.removePluginData(
options: RemovalOptions,
callback?: function,
): Promise<void>
پشتیبانی از Flash برداشته شده است. این عملکرد تأثیری ندارد.
دادههای افزونهها را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی دادههای افزونهها پاک شود، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeServiceWorkers()
chrome.browsingData.removeServiceWorkers(
options: RemovalOptions,
callback?: function,
): Promise<void>
سرویسکاران وبسایتها را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی کارگران خدمات وبسایتها پاک شوند، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
removeWebSQL()
chrome.browsingData.removeWebSQL(
options: RemovalOptions,
callback?: function,
): Promise<void>
پشتیبانی از WebSQL برداشته شده است. این عملکرد تأثیری ندارد.
دادههای WebSQL وبسایتها را پاک میکند.
پارامترها
-
گزینهها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:() => void
بازگشتیها
-
Promise<void>
Chrome نسخه ۹۶ به بالاوقتی پایگاههای داده WebSQL وبسایتها پاک شده باشد، حل میشود.
Promises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.
settings()
chrome.browsingData.settings(
callback?: function,
): Promise<object>
گزارش میدهد که کدام نوع دادهها درحالحاضر در واسط کاربر تنظیمات «پاک کردن دادههای مرور» انتخاب شدهاند. توجه: برخیاز انواع دادههای موجود در این میانای برنامهسازی کاربردی در واسط کاربر تنظیمات دردسترس نیستند و برخیاز تنظیمات واسط کاربر بیشاز یک نوع داده فهرستشده در اینجا را کنترل میکنند.
پارامترها
-
تماس برگشتی
تابع اختیاری
پارامتر
callbackبهصورت زیر است:(result: object) => void
-
نتیجه
شیء
-
dataRemovalPermitted
همه انواع در نتیجه وجود خواهند داشت، با مقادیر
trueاگر مجاز به حذف باشند (مثلاً طبق خطمشی سازمانی) وfalseاگر مجاز نباشند. -
dataToRemove
همه انواع در نتیجه وجود خواهند داشت، با مقادیر
trueاگر هر دو برای حذف انتخاب شده باشند و حذف آنها مجاز باشد، درغیراینصورتfalse. -
گزینهها
-
-
بازگشتیها
-
Promise<object>
Chrome نسخه ۹۶ به بالاPromises فقط برای «مانیفست نسخه ۳» و نسخههای جدیدتر پشتیبانی میشود، پلاتفرمهای دیگر باید از callbacks استفاده کنند.