chrome.browsingData (original) (raw)

توضیحات

از API chrome.browsingData برای حذف داده‌های مرور از پروفایل محلی کاربر استفاده کنید.

مجوزها

browsingData

برای استفاده از این API، باید مجوز "browsingData" را در فایل manifest افزونه تعریف کنید.

{
  "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، آن را به‌طور خودکار بازسازی کند. این کار برای اطمینان از ادامه‌ی کار Sync است تا داده‌ها در نهایت از روی سرور حذف شوند. با این حال، می‌توان از chrome.browsingData.removeCookies() خاص‌تر برای پاک کردن کوکی برای حساب Sync استفاده کرد و در این حالت، Sync متوقف می‌شود.

ریشه‌های خاص

برای حذف داده‌ها برای یک مبدأ خاص یا مستثنی کردن مجموعه‌ای از مبدأها از حذف، می‌توانید از پارامترهای 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 به شما امکان می‌دهد مشخص کنید کدام نوع از originها باید اعمال شوند. originها به سه دسته تقسیم می‌شوند:

می‌توانیم مثال قبلی را طوری تنظیم کنیم که فقط داده‌ها را از وب‌سایت‌های محافظت‌شده حذف کند:

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 تفسیر می‌شوند.

خواص

RemovalOptions

گزینه‌هایی که دقیقاً مشخص می‌کنند چه داده‌هایی حذف خواهند شد.

خواص

روش‌ها

remove()

chrome.browsingData.remove(
  options: RemovalOptions,
  dataToRemove: DataTypeSet,
): Promise

انواع مختلف داده‌های مرور ذخیره شده در پروفایل کاربر را پاک می‌کند.

پارامترها

بازگشت‌ها

removeAppcache()

chrome.browsingData.removeAppcache(
  options: RemovalOptions,
): Promise

داده‌های appcache وب‌سایت‌ها را پاک می‌کند.

پارامترها

بازگشت‌ها

removeCache()

chrome.browsingData.removeCache(
  options: RemovalOptions,
): Promise

حافظه پنهان مرورگر را پاک می‌کند.

پارامترها

بازگشت‌ها

removeCacheStorage()

chrome.browsingData.removeCacheStorage(
  options: RemovalOptions,
): Promise

داده‌های ذخیره‌سازی کش وب‌سایت‌ها را پاک می‌کند.

پارامترها

بازگشت‌ها

removeCookies()

chrome.browsingData.removeCookies(
  options: RemovalOptions,
): Promise

کوکی‌های مرورگر و گواهی‌های متصل به سرور که در یک بازه زمانی خاص تغییر یافته‌اند را پاک می‌کند.

پارامترها

بازگشت‌ها

removeDownloads()

chrome.browsingData.removeDownloads(
  options: RemovalOptions,
): Promise

لیست فایل‌های دانلود شده مرورگر را پاک می‌کند ( نه خود فایل‌های دانلود شده).

پارامترها

بازگشت‌ها

removeFileSystems()

chrome.browsingData.removeFileSystems(
  options: RemovalOptions,
): Promise

داده‌های سیستم فایل وب‌سایت‌ها را پاک می‌کند.

پارامترها

بازگشت‌ها

removeFormData()

chrome.browsingData.removeFormData(
  options: RemovalOptions,
): Promise

داده‌های فرم ذخیره‌شده در مرورگر را پاک می‌کند (تکمیل خودکار).

پارامترها

بازگشت‌ها

removeHistory()

chrome.browsingData.removeHistory(
  options: RemovalOptions,
): Promise

تاریخچه مرورگر را پاک می‌کند.

پارامترها

بازگشت‌ها

removeIndexedDB()

chrome.browsingData.removeIndexedDB(
  options: RemovalOptions,
): Promise

داده‌های IndexedDB وب‌سایت‌ها را پاک می‌کند.

پارامترها

بازگشت‌ها

removeLocalStorage()

chrome.browsingData.removeLocalStorage(
  options: RemovalOptions,
): Promise

داده‌های ذخیره‌سازی محلی وب‌سایت‌ها را پاک می‌کند.

پارامترها

بازگشت‌ها

removePasswords()

chrome.browsingData.removePasswords(
  options: RemovalOptions,
): Promise

پشتیبانی از حذف رمز عبور از طریق افزونه‌ها حذف شده است. این عملکرد هیچ تاثیری ندارد.

رمزهای عبور ذخیره شده مرورگر را پاک می‌کند.

پارامترها

بازگشت‌ها

removePluginData()

chrome.browsingData.removePluginData(
  options: RemovalOptions,
): Promise

پشتیبانی از فلش حذف شده است. این عملکرد هیچ تاثیری ندارد.

داده‌های افزونه‌ها را پاک می‌کند.

پارامترها

بازگشت‌ها

removeServiceWorkers()

chrome.browsingData.removeServiceWorkers(
  options: RemovalOptions,
): Promise

سرویس ورکرهای وب‌سایت‌ها را پاک می‌کند.

پارامترها

بازگشت‌ها

removeWebSQL()

chrome.browsingData.removeWebSQL(
  options: RemovalOptions,
): Promise

داده‌های WebSQL وب‌سایت‌ها را پاک می‌کند.

پارامترها

بازگشت‌ها

settings()

chrome.browsingData.settings(): Promise

گزارش می‌دهد که در حال حاضر کدام نوع داده‌ها در رابط کاربری تنظیمات «پاک کردن داده‌های مرور» انتخاب شده‌اند. توجه: برخی از انواع داده‌های موجود در این API در رابط کاربری تنظیمات موجود نیستند و برخی از تنظیمات رابط کاربری بیش از یک نوع داده ذکر شده در اینجا را کنترل می‌کنند.

بازگشت‌ها