Beschreibung
Mit der chrome.browsingData
API kannst du Browserdaten aus dem lokalen Profil eines Nutzers entfernen.
Berechtigungen
browsingData
Sie müssen die Berechtigung "browsingData"
im Erweiterungsmanifest deklarieren, um diese API verwenden zu können.
{
"name": "My extension",
...
"permissions": [
"browsingData",
],
...
}
Konzepte und Verwendung
Der einfachste Anwendungsfall für diese API ist ein zeitbasierter Mechanismus zum Löschen der Browserdaten eines Nutzers.
Ihr Code sollte einen Zeitstempel enthalten, der das vergangene Datum angibt, nach dem die Aktivität des Nutzers
Browserdaten entfernt werden sollten. Dieser Zeitstempel ist als Anzahl der Millisekunden seit dem
Unix epoch (kann mit der Methode getTime()
aus einem JavaScript-Date
-Objekt abgerufen werden).
Um beispielsweise alle Browserdaten eines Nutzers der letzten Woche zu löschen, können Sie Code wie folgt schreiben: folgt:
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);
Mit der Methode chrome.browsingData.remove()
können Sie verschiedene Arten von Browserdaten mit einem
und ist viel schneller als das Aufrufen mehrerer spezifischerer Methoden. Wenn Sie jedoch
nur einen bestimmten Typ von Browserdaten löschen möchten, z. B. Cookies,
-Methoden bieten eine lesbare Alternative zu einem Aufruf mit JSON-Code.
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);
Wenn der Nutzer seine Daten synchronisiert, erstellt chrome.browsingData.remove()
das Cookie möglicherweise automatisch neu
für das Synchronisierungskonto. Nur so kann die Synchronisierung weiterhin funktionieren,
können die Daten auf dem Server gelöscht werden. Je spezifischer die
chrome.browsingData.removeCookies()
kann verwendet werden, um das Cookie für das Synchronisierungskonto zu löschen, und die Synchronisierung
in diesem Fall pausiert.
Bestimmte Ursprünge
Um Daten für einen bestimmten Ursprung zu entfernen oder eine Gruppe von Ursprüngen vom Löschen auszuschließen, können Sie die
RemovalOptions.origins
- und RemovalOptions.excludeOrigins
-Parameter. Sie können nur auf
Cookies, Cache und Speicher (CacheStorage, FileSystems, IndexedDB, LocalStorage, ServiceWorkers und
WebSQL).
chrome.browsingData.remove({
"origins": ["https://www.example.com"]
}, {
"cacheStorage": true,
"cookies": true,
"fileSystems": true,
"indexedDB": true,
"localStorage": true,
"serviceWorkers": true,
"webSQL": true
}, callback);
Ursprungstypen
Durch Hinzufügen des Attributs originTypes
zum API-Optionsobjekt können Sie angeben, welche Arten von
Ursprüngen getroffen werden müssen. Die Quellen werden in drei Kategorien unterteilt:
unprotectedWeb
deckt den allgemeinen Fall von Websites ab, die Nutzer ohne besondere Aktion ausführen. Wenn Sie keineoriginTypes
angeben, entfernt die API standardmäßig Daten aus ungeschützten Webursprüngen.protectedWeb
deckt die Webursprünge ab, die als gehostete Anwendungen installiert wurden. Durch die Installation von Angry Birds wird beispielsweise der Ursprunghttps://chrome.angrybirds.com
geschützt. wird es aus der KategorieunprotectedWeb
entfernt. Seien Sie vorsichtig, wenn Sie das Löschen von Daten für diese Ursprünge: Stellen Sie sicher, dass Ihre Nutzer wissen, was sie erwarten, da dies unwiderruflich ihre Spieldaten zu entfernen. Niemand will winzige Schweinehäuser öfter als nötig umwerfen.extension
deckt Ursprünge im Schemachrome-extensions:
ab. Das Entfernen von Erweiterungsdaten solltet ihr unbedingt sehr vorsichtig sein.
Wir könnten das vorherige Beispiel so anpassen, dass nur Daten von geschützten Websites entfernt werden:
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);
Beispiele
Um diese API auszuprobieren, installieren Sie das browsingData API-Beispiel aus den chrome-extension-samples zu erstellen.
Typen
DataTypeSet
Eine Reihe von Datentypen. Fehlende Datentypen werden als false
interpretiert.
Attribute
-
App-Cache
Boolescher Wert optional
Websites appcaches.
-
Cache
Boolescher Wert optional
Im Cache des Browsers
-
cacheStorage
Boolescher Wert optional
Chrome 72 und höherCache-Speicher
-
Cookies
Boolescher Wert optional
Die Cookies des Browsers
-
downloads
Boolescher Wert optional
Die Downloadliste des Browsers.
-
fileSystems
Boolescher Wert optional
Websites Dateisysteme.
-
formData
Boolescher Wert optional
Die im Browser gespeicherten Formulardaten.
-
Verlauf
Boolescher Wert optional
Der Verlauf des Browsers
-
indexedDB
Boolescher Wert optional
Websites IndexedDB-Daten.
-
localStorage
Boolescher Wert optional
Websites im lokalen Speicher.
-
Passwörter
Boolescher Wert optional
Gespeicherte Passwörter.
-
pluginData
Boolescher Wert optional
<ph type="x-smartling-placeholder"></ph> Seit Chrome 88 verworfenFlash wird nicht mehr unterstützt. Dieser Datentyp wird ignoriert.
Plug-ins Daten.
-
serverBoundCertificates
Boolescher Wert optional
<ph type="x-smartling-placeholder"></ph> Seit Chrome 76 verworfenServergebundene Zertifikate werden nicht mehr unterstützt. Dieser Datentyp wird ignoriert.
Servergebundene Zertifikate.
-
serviceWorkers
Boolescher Wert optional
Service Worker.
-
webSQL
Boolescher Wert optional
Websites WebSQL-Daten.
RemovalOptions
Optionen, mit denen genau festgelegt wird, welche Daten entfernt werden.
Attribute
-
excludeOrigins
string[] optional
Chrome 74 und höherSofern vorhanden, werden Daten für Ursprünge in dieser Liste vom Löschen ausgeschlossen. Kann nicht zusammen mit
origins
verwendet werden. Wird nur für Cookies, Speicher und Cache unterstützt. Cookies werden für die gesamte registrierfähige Domain ausgeschlossen. -
originTypes
Objekt optional
Ein Objekt, dessen Eigenschaften angeben, welche Ursprungstypen gelöscht werden sollen. Wenn dieses Objekt nicht angegeben ist, wird standardmäßig nur „ungeschützt“ gelöscht Ursprüngen. Prüfen Sie, ob Sie Anwendungsdaten wirklich entfernen möchten, bevor Sie „ProtectedWeb“ hinzufügen. oder „Erweiterungen“.
-
Erweiterung
Boolescher Wert optional
Erweiterungen und gepackte Anwendungen, die ein Nutzer installiert hat (sehr _wirklich_ vorsichtig!)
-
protectedWeb
Boolescher Wert optional
Websites, die als gehostete Anwendungen installiert wurden (Achtung!)
-
unprotectedWeb
Boolescher Wert optional
Normale Websites.
-
-
Ursprünge
[string, ...string[]] optional
Chrome 74 und höherFalls vorhanden, werden nur Daten für Ursprünge in dieser Liste gelöscht. Wird nur für Cookies, Speicher und Cache unterstützt. Cookies werden für die gesamte registrierfähige Domain gelöscht.
-
seit
Zahl optional
Entferne Daten, die an oder nach diesem Datum gesammelt wurden, angegeben in Millisekunden seit der Epoche (aufrufbar über die
getTime
-Methode des JavaScript-Date
-Objekts). Wenn nicht vorhanden, wird standardmäßig 0 verwendet, wodurch alle Browserdaten gelöscht werden.
Methoden
remove()
chrome.browsingData.remove(
options: RemovalOptions,
dataToRemove: DataTypeSet,
callback?: function,
)
Löscht verschiedene Arten von Browserdaten, die im Profil eines Nutzers gespeichert sind.
Parameter
-
Optionen
-
dataToRemove
Die zu entfernenden Datentypen.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeAppcache()
chrome.browsingData.removeAppcache(
options: RemovalOptions,
callback?: function,
)
Löscht die appcache-Daten.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeCache()
chrome.browsingData.removeCache(
options: RemovalOptions,
callback?: function,
)
Löscht den Cache des Browsers.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeCacheStorage()
chrome.browsingData.removeCacheStorage(
options: RemovalOptions,
callback?: function,
)
Löscht die im Cache gespeichert werden.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeCookies()
chrome.browsingData.removeCookies(
options: RemovalOptions,
callback?: function,
)
Löscht die Cookies und servergebundenen Zertifikate des Browsers, die innerhalb eines bestimmten Zeitraums geändert wurden.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeDownloads()
chrome.browsingData.removeDownloads(
options: RemovalOptions,
callback?: function,
)
Löscht die Liste der heruntergeladenen Dateien im Browser (nicht die heruntergeladenen Dateien selbst).
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeFileSystems()
chrome.browsingData.removeFileSystems(
options: RemovalOptions,
callback?: function,
)
Löscht die Daten aus dem Dateisystem.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeFormData()
chrome.browsingData.removeFormData(
options: RemovalOptions,
callback?: function,
)
Löscht die im Browser gespeicherten Formulardaten (Autofill).
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeHistory()
chrome.browsingData.removeHistory(
options: RemovalOptions,
callback?: function,
)
Löscht den Browserverlauf.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeIndexedDB()
chrome.browsingData.removeIndexedDB(
options: RemovalOptions,
callback?: function,
)
Löscht die IndexedDB-Daten.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeLocalStorage()
chrome.browsingData.removeLocalStorage(
options: RemovalOptions,
callback?: function,
)
Löscht die im lokalen Speicher.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removePasswords()
chrome.browsingData.removePasswords(
options: RemovalOptions,
callback?: function,
)
Löscht die im Browser gespeicherten Passwörter.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removePluginData()
chrome.browsingData.removePluginData(
options: RemovalOptions,
callback?: function,
)
Flash wird nicht mehr unterstützt. Diese Funktion hat keine Auswirkungen.
Löscht Plug-ins Daten.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeServiceWorkers()
chrome.browsingData.removeServiceWorkers(
options: RemovalOptions,
callback?: function,
)
Löscht die Service Workers.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
removeWebSQL()
chrome.browsingData.removeWebSQL(
options: RemovalOptions,
callback?: function,
)
Löscht die WebSQL-Daten.
Parameter
-
Optionen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
settings()
chrome.browsingData.settings(
callback?: function,
)
Gibt an, welche Datentypen derzeit unter "Browserdaten löschen" ausgewählt sind Einstellungen. Hinweis: Einige der in dieser API enthaltenen Datentypen sind in der Benutzeroberfläche für Einstellungen nicht verfügbar und mit einigen UI-Einstellungen werden mehr als einen der hier aufgeführten Datentypen gesteuert.
Parameter
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: object) => void
-
Ergebnis
Objekt
-
dataRemovalPermitted
Alle Typen sind im Ergebnis enthalten, mit dem Wert
true
, wenn sie entfernt werden dürfen (z.B. gemäß einer Unternehmensrichtlinie), undfalse
, wenn nicht. -
dataToRemove
Alle Typen sind im Ergebnis enthalten, mit dem Wert
true
, wenn beide zum Entfernen ausgewählt sind und entfernt werden dürfen, andernfallsfalse
. -
Optionen
-
-
Gibt Folgendes zurück:
-
Promise<object>
Chrome 96 und höherPromise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.