الوصف
استخدِم واجهة برمجة التطبيقات chrome.browsingData
لإزالة بيانات التصفّح من الملف الشخصي المحلي للمستخدم.
الأذونات
browsingData
يجب الإفصاح عن إذن "browsingData"
في بيان الإضافة لاستخدام واجهة برمجة التطبيقات هذه.
{
"name": "My extension",
...
"permissions": [
"browsingData",
],
...
}
المفاهيم والاستخدام
إنّ أبسط حالات استخدام لواجهة برمجة التطبيقات هذه هي آلية مستندة إلى الوقت لمحو بيانات التصفّح الخاصة بالمستخدم.
يجب أن يوفّر الرمز طابعًا زمنيًا يشير إلى التاريخ السابق الذي يجب إزالة بيانات تصفّح المستخدم بعده. ويتم تنسيق هذا الطابع الزمني كعدد بالمللي ثانية منذ
حقبة Unix (والتي يمكن استردادها من كائن Date
في JavaScript باستخدام الطريقة 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
. ولا يمكن تطبيقها إلا على ملفات تعريف الارتباط وذاكرة التخزين المؤقت والتخزين (ذاكرة التخزين المؤقت و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
إلى كائن خيارات واجهات برمجة التطبيقات، يمكنك تحديد أنواع المصادر التي يجب التأثير فيها. يتم تقسيم المصادر إلى ثلاث فئات:
- يتناول
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;
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 من مستودع chrome-extension- sample.
الأنواع
DataTypeSet
مجموعة من أنواع البيانات. يتم تفسير أنواع البيانات الناقصة على أنّها false
.
أماكن إقامة
-
ذاكرة التخزين المؤقت للتطبيقات
قيمة منطقية اختيارية
ذاكرة التخزين المؤقت للتطبيقات للمواقع الإلكترونية
-
ذاكرة التخزين المؤقت
قيمة منطقية اختيارية
ذاكرة التخزين المؤقت في المتصفح
-
cacheStorage
قيمة منطقية اختيارية
الإصدار 72 من Chrome أو الإصدارات الأحدثمساحة ذاكرة التخزين المؤقت
-
ملفات تعريف الارتباط
قيمة منطقية اختيارية
ملفات تعريف الارتباط في المتصفح.
-
عمليات التنزيل
قيمة منطقية اختيارية
قائمة تنزيل المتصفّح.
-
fileSystems
قيمة منطقية اختيارية
أنظمة ملفات مواقع الويب.
-
formData
قيمة منطقية اختيارية
بيانات النموذج المخزنة في المتصفح.
-
السجلّ
قيمة منطقية اختيارية
سجلّ المتصفّح.
-
indexedDB
قيمة منطقية اختيارية
بيانات قاعدة البيانات المفهرسة للمواقع الإلكترونية
-
localStorage
قيمة منطقية اختيارية
بيانات التخزين المحلية للمواقع الإلكترونية
-
كلمات المرور
قيمة منطقية اختيارية
كلمات المرور المخزَّنة
-
pluginData
قيمة منطقية اختيارية
متوقّفة نهائيًا منذ الإصدار 88 من Chromeتم إلغاء دعم Flash. وسيتم تجاهل نوع البيانات هذا.
بيانات المكوّنات الإضافية.
-
serverBoundCertificates
قيمة منطقية اختيارية
متوقفة منذ الإصدار 76 من Chromeتمت إزالة اعتماد الشهادات المرتبطة بالخادم. وسيتم تجاهل نوع البيانات هذا.
الشهادات المرتبطة بالخادم.
-
serviceWorkers
قيمة منطقية اختيارية
مشغِّلو الخدمات:
-
webSQL
قيمة منطقية اختيارية
بيانات WebSQL في المواقع الإلكترونية
RemovalOptions
الخيارات التي تحدد بالضبط البيانات التي ستتم إزالتها.
أماكن إقامة
-
excludeOrigins
string[] اختيارية
الإصدار 74 من Chrome أو الإصدارات الأحدثعند توفّر هذه البيانات، يتم استبعاد بيانات المصادر في هذه القائمة من الحذف. لا يمكن استخدامهما مع
origins
. لا يتم دعمها إلا لملفات تعريف الارتباط وسعة التخزين وذاكرة التخزين المؤقت. يتم استبعاد ملفات تعريف الارتباط للنطاق القابل للتسجيل بالكامل. -
originTypes
الكائن اختياري
كائن تحدد خصائصه أنواع المصادر التي يجب محوها في حال عدم تحديد هذا الكائن، سيتم تلقائيًا محو المصادر "غير المحمية" فقط. يُرجى التأكّد من أنّك تريد حقًا إزالة بيانات التطبيق قبل إضافة ProtectWeb أو الإضافات.
-
إضافة
قيمة منطقية اختيارية
الإضافات والتطبيقات المجمّعة التي ثبّتها المستخدم (كن _حقًا_ !).
-
protectedWeb
قيمة منطقية اختيارية
مواقع الويب التي تم تثبيتها كتطبيقات مستضافة (كن حذرًا!).
-
unprotectedWeb
قيمة منطقية اختيارية
المواقع الإلكترونية العادية:
-
-
الأصول
[string, ...string[]] optional
الإصدار 74 من Chrome أو الإصدارات الأحدثعند استخدام هذه الميزة، يتم فقط حذف بيانات المصادر في هذه القائمة. لا يتم دعمها إلا لملفات تعريف الارتباط وسعة التخزين وذاكرة التخزين المؤقت. يتم محو ملفات تعريف الارتباط للنطاق القابل للتسجيل بالكامل.
-
منذ
الرقم اختياري
أزِل البيانات المتراكمة في هذا التاريخ أو بعده، والتي يتم تمثيلها بالمللي ثانية منذ تلك الفترة (يمكن الوصول إليها من خلال طريقة
getTime
في كائن JavaScriptDate
). في حال عدم توفّر هذه المعلومات، يتم ضبط القيمة التلقائية على 0 (ما سيؤدي إلى إزالة جميع بيانات التصفّح).
الطُرق
remove()
chrome.browsingData.remove(
options: RemovalOptions,
dataToRemove: DataTypeSet,
callback?: function,
)
يؤدي هذا الإجراء إلى محو أنواع مختلفة من بيانات التصفّح المخزّنة في الملف الشخصي للمستخدم.
المعلمات
-
الخيارات
-
dataToRemove
مجموعة أنواع البيانات المطلوب إزالتها.
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeAppcache()
chrome.browsingData.removeAppcache(
options: RemovalOptions,
callback?: function,
)
يؤدي هذا الإجراء إلى محو بيانات ذاكرة التخزين المؤقت للتطبيقات الخاصة بالمواقع الإلكترونية.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeCache()
chrome.browsingData.removeCache(
options: RemovalOptions,
callback?: function,
)
يمحو ذاكرة التخزين المؤقت في المتصفح.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeCacheStorage()
chrome.browsingData.removeCacheStorage(
options: RemovalOptions,
callback?: function,
)
يؤدي هذا الإجراء إلى محو بيانات مساحة تخزين ذاكرة التخزين المؤقت للمواقع الإلكترونية.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeCookies()
chrome.browsingData.removeCookies(
options: RemovalOptions,
callback?: function,
)
يؤدي ذلك إلى محو ملفات تعريف الارتباط والشهادات المرتبطة بالخادم والتي تم تعديلها خلال إطار زمني محدد.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeDownloads()
chrome.browsingData.removeDownloads(
options: RemovalOptions,
callback?: function,
)
يؤدي هذا الإجراء إلى محو قائمة الملفات التي تم تنزيلها في المتصفّح (وليس الملفات التي تم تنزيلها نفسها).
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeFileSystems()
chrome.browsingData.removeFileSystems(
options: RemovalOptions,
callback?: function,
)
يؤدي هذا الإجراء إلى محو بيانات نظام ملفات المواقع الإلكترونية.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeFormData()
chrome.browsingData.removeFormData(
options: RemovalOptions,
callback?: function,
)
محو بيانات النموذج المخزنة في المتصفح (الملء التلقائي).
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeHistory()
chrome.browsingData.removeHistory(
options: RemovalOptions,
callback?: function,
)
يمحو سجلّ المتصفح.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeIndexedDB()
chrome.browsingData.removeIndexedDB(
options: RemovalOptions,
callback?: function,
)
يؤدي هذا الإجراء إلى محو بيانات IndexedDB للمواقع الإلكترونية.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeLocalStorage()
chrome.browsingData.removeLocalStorage(
options: RemovalOptions,
callback?: function,
)
يؤدي هذا الإجراء إلى محو بيانات التخزين المحلية للمواقع الإلكترونية.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removePasswords()
chrome.browsingData.removePasswords(
options: RemovalOptions,
callback?: function,
)
محو كلمات المرور المخزنة في المتصفح.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removePluginData()
chrome.browsingData.removePluginData(
options: RemovalOptions,
callback?: function,
)
تم إلغاء دعم Flash. ليس لهذه الدالة أي تأثير.
يؤدي ذلك إلى محو بيانات المكوّنات الإضافية.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeServiceWorkers()
chrome.browsingData.removeServiceWorkers(
options: RemovalOptions,
callback?: function,
)
يؤدي هذا الإجراء إلى محو مشغّلي الخدمات على المواقع الإلكترونية.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
removeWebSQL()
chrome.browsingData.removeWebSQL(
options: RemovalOptions,
callback?: function,
)
يؤدي هذا الإجراء إلى محو بيانات WebSQL في المواقع الإلكترونية.
المعلمات
-
الخيارات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.
settings()
chrome.browsingData.settings(
callback?: function,
)
يشير إلى أنواع البيانات المحدّدة حاليًا في واجهة مستخدم إعدادات "محو بيانات التصفّح". ملاحظة: بعض أنواع البيانات المضمّنة في واجهة برمجة التطبيقات هذه غير متوفرة في واجهة مستخدم الإعدادات، وتتحكّم بعض إعدادات واجهة المستخدم في أكثر من نوع بيانات واحد مدرَج هنا.
المعلمات
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(result: object) => void
-
نتيجة
عنصر
-
dataRemovalPermitted
ستكون جميع الأنواع متوفرة في النتيجة، مع قيم
true
إذا كان مسموحًا بإزالتها (مثلاً، بموجب سياسة المؤسسة) وfalse
إذا لم يكن مسموحًا بها. -
dataToRemove
ستكون جميع الأنواع موجودة في النتيجة، مع قيم
true
إذا تم اختيار كليهما لإزالتها والسماح بإزالتها، وبخلاف ذلك،false
. -
الخيارات
-
-
المرتجعات
-
Promise<object>
الإصدار 96 من Chrome أو الإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. ويحلّ الوعد بالنوع نفسه الذي يتم إرساله إلى معاودة الاتصال.