توضیحات
از chrome.browsingData
API برای حذف داده های مرور از نمایه محلی کاربر استفاده کنید.
مجوزها
browsingData
برای استفاده از این API باید مجوز "browsingData"
را در مانیفست برنامه افزودنی اعلام کنید.
{
"name": "My extension",
...
"permissions": [
"browsingData",
],
...
}
مفاهیم و کاربرد
ساده ترین مورد استفاده برای این API مکانیزمی مبتنی بر زمان برای پاک کردن داده های مرور کاربر است. کد شما باید یک مهر زمانی ارائه دهد که نشان دهنده تاریخ تاریخی است که پس از آن داده های مرور کاربر باید حذف شوند. این مهر زمانی به عنوان تعداد میلی ثانیه از زمان یونیکس (که می تواند از یک شی 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()
ممکن است به طور خودکار کوکی را برای حساب Sync پس از پاک کردن آن بازسازی کند. این برای اطمینان از اینکه همگامسازی میتواند به کار خود ادامه دهد، به طوری که دادهها در نهایت روی سرور حذف شوند، انجام میشود. با این حال، 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
به شی گزینه های APIs به شما امکان می دهد مشخص کنید کدام نوع از مبداها باید اعمال شوند. ریشه ها به سه دسته تقسیم می شوند:
-
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);
نمونه ها
برای امتحان این API، نمونه browsingData API را از مخزن chrome-extension-samples نصب کنید.
انواع
DataTypeSet
مجموعه ای از انواع داده ها انواع داده های از دست رفته به عنوان false
تفسیر می شوند.
خواص
- appcache
بولی اختیاری
اپ کش های وب سایت ها
- حافظه پنهان
بولی اختیاری
کش مرورگر.
- حافظه پنهان
بولی اختیاری
Chrome 72+ذخیره سازی کش
- کوکی ها
بولی اختیاری
کوکی های مرورگر
- دانلودها
بولی اختیاری
لیست دانلود مرورگر.
- فایل سیستم ها
بولی اختیاری
فایل سیستم های وب سایت ها
- formData
بولی اختیاری
داده های فرم ذخیره شده مرورگر.
- تاریخچه
بولی اختیاری
تاریخچه مرورگر.
- indexedDB
بولی اختیاری
داده های IndexedDB وب سایت ها.
- محل ذخیره سازی
بولی اختیاری
داده های ذخیره سازی محلی وب سایت ها
- رمزهای عبور
بولی اختیاری
رمزهای عبور ذخیره شده
- افزونه داده
بولی اختیاری
از Chrome 88 منسوخ شده استپشتیبانی از Flash حذف شده است. این نوع داده نادیده گرفته خواهد شد.
داده های پلاگین ها
- serverBoundCertificates
بولی اختیاری
از Chrome 76 منسوخ شده استپشتیبانی از گواهی های متصل به سرور حذف شده است. این نوع داده نادیده گرفته خواهد شد.
گواهی های متصل به سرور
- خدمات کارگران
بولی اختیاری
کارگران خدماتی
- webSQL
بولی اختیاری
داده های WebSQL وب سایت ها.
RemovalOptions
گزینه هایی که دقیقاً تعیین می کنند چه داده هایی حذف می شوند.
خواص
- excludeOrigins
رشته[] اختیاری است
Chrome 74+در صورت وجود، دادههای مبدا در این فهرست از حذف حذف میشوند. نمی توان همراه با
origins
استفاده کرد. فقط برای کوکی ها، ذخیره سازی و حافظه پنهان پشتیبانی می شود. کوکی ها برای کل دامنه قابل ثبت مستثنی هستند. - مبدا انواع
شی اختیاری
شی ای که ویژگی های آن مشخص می کند که کدام نوع مبدا باید پاک شود. اگر این شی مشخص نشده باشد، به طور پیشفرض فقط مبداهای «حفاظنشده» را پاک میکند. لطفاً مطمئن شوید که واقعاً میخواهید دادههای برنامه را قبل از افزودن «ProtectedWeb» یا «برنامههای افزودنی» حذف کنید.
- پسوند
بولی اختیاری
برنامه های افزودنی و بسته بندی شده ای که کاربر نصب کرده است (واقعاً مراقب باشید!).
- محافظت شده وب
بولی اختیاری
وب سایت هایی که به عنوان برنامه های میزبانی شده نصب شده اند (مراقب باشید!).
- وب محافظت نشده
بولی اختیاری
وب سایت های معمولی
- ریشه ها
[رشته، ... رشته[]] اختیاری
Chrome 74+در صورت وجود، فقط دادههای مبدا در این فهرست حذف میشوند. فقط برای کوکی ها، ذخیره سازی و حافظه پنهان پشتیبانی می شود. کوکی ها برای کل دامنه قابل ثبت پاک می شوند.
- از آنجایی که
شماره اختیاری
دادههای انباشتهشده در یا بعد از این تاریخ را که در میلیثانیه از آن دوره نشان داده شدهاند، حذف کنید (قابل دسترسی از طریق روش
getTime
شی جاوا اسکریپتDate
). در صورت عدم وجود، به طور پیش فرض روی 0 قرار می گیرد (که همه داده های مرور را حذف می کند).
روش ها
remove()
chrome.browsingData.remove(
options: RemovalOptions,
dataToRemove: DataTypeSet,
callback?: function,
)
انواع مختلف داده های مرور ذخیره شده در نمایه کاربر را پاک می کند.
پارامترها
- گزینه ها
- dataToRemove
مجموعه ای از انواع داده برای حذف.
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeAppcache()
chrome.browsingData.removeAppcache(
options: RemovalOptions,
callback?: function,
)
داده های Appcache وب سایت ها را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeCache()
chrome.browsingData.removeCache(
options: RemovalOptions,
callback?: function,
)
کش مرورگر را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeCacheStorage()
chrome.browsingData.removeCacheStorage(
options: RemovalOptions,
callback?: function,
)
داده های ذخیره سازی کش وب سایت ها را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeCookies()
chrome.browsingData.removeCookies(
options: RemovalOptions,
callback?: function,
)
کوکیهای مرورگر و گواهیهای متصل به سرور را که در یک بازه زمانی خاص اصلاح شدهاند، پاک میکند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeDownloads()
chrome.browsingData.removeDownloads(
options: RemovalOptions,
callback?: function,
)
لیست فایل های دانلود شده مرورگر ( نه خود فایل های دانلود شده) را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeFileSystems()
chrome.browsingData.removeFileSystems(
options: RemovalOptions,
callback?: function,
)
داده های سیستم فایل وب سایت ها را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeFormData()
chrome.browsingData.removeFormData(
options: RemovalOptions,
callback?: function,
)
داده های فرم ذخیره شده مرورگر (تکمیل خودکار) را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeHistory()
chrome.browsingData.removeHistory(
options: RemovalOptions,
callback?: function,
)
تاریخچه مرورگر را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeIndexedDB()
chrome.browsingData.removeIndexedDB(
options: RemovalOptions,
callback?: function,
)
داده های IndexedDB وب سایت ها را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeLocalStorage()
chrome.browsingData.removeLocalStorage(
options: RemovalOptions,
callback?: function,
)
داده های ذخیره سازی محلی وب سایت ها را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removePasswords()
chrome.browsingData.removePasswords(
options: RemovalOptions,
callback?: function,
)
رمزهای عبور ذخیره شده مرورگر را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removePluginData()
chrome.browsingData.removePluginData(
options: RemovalOptions,
callback?: function,
)
پشتیبانی از Flash حذف شده است. این تابع هیچ تاثیری ندارد.
داده های افزونه ها را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeServiceWorkers()
chrome.browsingData.removeServiceWorkers(
options: RemovalOptions,
callback?: function,
)
سرویسدهندگان وبسایتها را پاک میکند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
removeWebSQL()
chrome.browsingData.removeWebSQL(
options: RemovalOptions,
callback?: function,
)
داده های WebSQL وب سایت ها را پاک می کند.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:() => void
برمی گرداند
قول<باطل>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.
settings()
chrome.browsingData.settings(
callback?: function,
)
گزارش می دهد که چه نوع داده هایی در حال حاضر در رابط کاربری تنظیمات "پاک کردن داده های مرور" انتخاب شده اند. توجه: برخی از انواع داده های موجود در این API در رابط کاربری تنظیمات موجود نیستند و برخی از تنظیمات رابط کاربری بیش از یک نوع داده فهرست شده در اینجا را کنترل می کنند.
پارامترها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:(result: object) => void
- نتیجه
شی
- dataRemovalPermitted
همه انواع در نتیجه وجود خواهند داشت، با مقادیر
true
اگر مجاز به حذف باشند (مثلاً توسط خط مشی شرکت) و در غیر این صورتfalse
. - dataToRemove
همه انواع در نتیجه وجود خواهند داشت، اگر هر دو برای حذف انتخاب شوند و اجازه حذف داشته باشند، مقدار
true
، در غیر این صورتfalse
. - گزینه ها
برمی گرداند
قول<object>
Chrome 96+Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.