Beschrijving
Gebruik de chrome.browsingData API om browsegegevens uit het lokale profiel van een gebruiker te verwijderen.
Toestemmingen
browsingDataManifest
Om deze API te kunnen gebruiken, moet u de machtiging "browsingData" in het extensiemanifest declareren.
{
"name": "My extension",
...
"permissions": [
"browsingData",
],
...
}
Gebruik
Het eenvoudigste gebruiksscenario voor deze API is een tijdsgebonden mechanisme om de browsegegevens van een gebruiker te wissen. Uw code moet een tijdstempel leveren dat de historische datum aangeeft waarna de browsegegevens van de gebruiker moeten worden verwijderd. Deze tijdstempel is opgemaakt als het aantal milliseconden sinds de Unix-epoch (die kan worden opgevraagd uit een JavaScript Date object via de getTime methode).
Om bijvoorbeeld alle browsegegevens van een gebruiker van de afgelopen week te wissen, kunt u de volgende code schrijven:
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);
Met de methode chrome.browsingData.remove kunt u verschillende soorten browsegegevens in één keer verwijderen. Dit is veel sneller dan het aanroepen van meerdere, meer specifieke methoden. Als u echter slechts één specifiek type browsegegevens wilt verwijderen (bijvoorbeeld cookies), bieden de meer gedetailleerde methoden een leesbaar alternatief voor een aanroep vol JSON-data.
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);
Als de gebruiker zijn gegevens synchroniseert, kan chrome.browsingData.remove de cookie voor het synchronisatieaccount automatisch opnieuw aanmaken nadat deze is verwijderd. Dit zorgt ervoor dat synchronisatie kan blijven werken, zodat de gegevens uiteindelijk van de server kunnen worden verwijderd. De meer specifieke optie chrome.browsingData.removeCookies kan echter worden gebruikt om de cookie voor het synchronisatieaccount te verwijderen, waarna synchronisatie wordt gepauzeerd.
Specifieke oorsprongen
Om gegevens voor een specifieke oorsprong te verwijderen of een set oorsprongen van verwijdering uit te sluiten, kunt u de parameters RemovalOptions.origins en RemovalOptions.excludeOrigins gebruiken. Deze parameters kunnen alleen worden toegepast op cookies, cache en opslag (CacheStorage, FileSystems, IndexedDB, LocalStorage, ServiceWorkers en WebSQL).
chrome.browsingData.remove({
"origins": ["https://www.example.com"]
}, {
"cacheStorage": true,
"cookies": true,
"fileSystems": true,
"indexedDB": true,
"localStorage": true,
"serviceWorkers": true,
"webSQL": true
}, callback);
Oorsprongstypen
Door een originTypes eigenschap toe te voegen aan het `options` object van de API, kunt u specificeren welke typen origins beïnvloed moeten worden. Momenteel zijn origins onderverdeeld in drie categorieën:
-
unprotectedWebdekt het algemene geval van websites die gebruikers bezoeken zonder speciale actie te ondernemen. Als u geenoriginTypesopgeeft, verwijdert de API standaard gegevens van onbeveiligde webbronnen. -
protectedWebomvat webbronnen die als gehoste applicaties zijn geïnstalleerd. Het installeren van Angry Birds , bijvoorbeeld, beschermt de bronhttps://chrome.angrybirds.comen verwijdert deze uit deunprotectedWebcategorie. Wees voorzichtig bij het verwijderen van gegevens voor deze bronnen: zorg ervoor dat uw gebruikers weten wat er gebeurt, want dit verwijdert hun spelgegevens onherroepelijk. Niemand wil vaker dan nodig kleine varkenshuisjes omvergooien. -
extensionvallen onder het schemachrome-extensions:. Het verwijderen van extensiegegevens is, zoals gezegd, iets waar je heel voorzichtig mee moet zijn.
We zouden het vorige voorbeeld kunnen aanpassen om alleen gegevens van beveiligde websites te verwijderen, als volgt:
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);
Voorbeelden
Om deze API uit te proberen, installeer je het browsingData API-voorbeeld uit de chrome-extension-samples repository.
Soorten
DataTypeSet
Een set gegevenstypen. Ontbrekende gegevenstypen worden geïnterpreteerd als false .
Eigenschappen
- appcache
boolean optioneel
Appcaches van websites.
- cache
boolean optioneel
De cache van de browser.
- cacheStorage
boolean optioneel
Chrome 72+Cacheopslag
- cookies
boolean optioneel
De cookies van de browser.
- downloads
boolean optioneel
De downloadlijst van de browser.
- bestandssystemen
boolean optioneel
Bestandssystemen van websites.
- formuliergegevens
boolean optioneel
De formuliergegevens die in de browser zijn opgeslagen.
- geschiedenis
boolean optioneel
De browsegeschiedenis.
- indexedDB
boolean optioneel
IndexedDB-gegevens van websites.
- lokale opslag
boolean optioneel
Lokale opslaggegevens van websites.
- wachtwoorden
boolean optioneel
VerouderdDe ondersteuning voor het verwijderen van wachtwoorden via extensies is verwijderd. Dit gegevenstype wordt genegeerd.
Opgeslagen wachtwoorden.
- pluginData
boolean optioneel
Niet meer bruikbaar sinds Chrome 88.De ondersteuning voor Flash is verwijderd. Dit gegevenstype wordt genegeerd.
Plugingegevens.
- serverBoundCertificates
boolean optioneel
Niet meer bruikbaar sinds Chrome 76.De ondersteuning voor servergebonden certificaten is verwijderd. Dit gegevenstype wordt genegeerd.
Servergebonden certificaten.
- servicemedewerkers
boolean optioneel
Dienstverlenend personeel.
- webSQL
boolean optioneel
WebSQL-gegevens van websites.
RemovalOptions
Opties die precies bepalen welke gegevens worden verwijderd.
Eigenschappen
- uitsluitenOrigins
string[] optioneel
Chrome 74+Indien aanwezig, worden gegevens voor oorsprongen in deze lijst uitgesloten van verwijdering. Kan niet samen met
originsworden gebruikt. Alleen ondersteund voor cookies, opslag en cache. Cookies worden uitgesloten voor het gehele registreerbare domein. - oorsprongstypen
object optioneel
Een object waarvan de eigenschappen specificeren welke oorsprongstypen moeten worden gewist. Als dit object niet is gespecificeerd, worden standaard alleen 'niet-beveiligde' oorsprongen gewist. Zorg ervoor dat u daadwerkelijk applicatiegegevens wilt verwijderen voordat u 'protectedWeb' of 'extensions' toevoegt.
- verlenging
boolean optioneel
Extensies en geïnstalleerde applicaties die een gebruiker heeft geïnstalleerd (wees _heel_ voorzichtig!).
- protectedWeb
boolean optioneel
Websites die als gehoste applicaties zijn geïnstalleerd (wees voorzichtig!).
- onbeveiligdeWebsite
boolean optioneel
Normale websites.
- oorsprongen
[string, ...string[]] optioneel
Chrome 74+Indien aanwezig, worden alleen gegevens voor oorsprongen in deze lijst verwijderd. Alleen ondersteund voor cookies, opslag en cache. Cookies worden verwijderd voor het gehele registreerbare domein.
- sinds
nummer optioneel
Verwijder gegevens die op of na deze datum zijn verzameld. De tijd wordt weergegeven in milliseconden sinds de epoch (toegankelijk via de
getTimemethode van het JavaScriptDateobject). Indien deze datum ontbreekt, wordt standaard 0 gebruikt (wat alle browsegegevens zou verwijderen).
Methoden
remove()
chrome.browsingData.remove(
options: RemovalOptions,
dataToRemove: DataTypeSet,
callback?: function,
): Promise<void>
Hiermee worden verschillende soorten browsegegevens verwijderd die in het profiel van een gebruiker zijn opgeslagen.
Parameters
- opties
- dataToRemove
De set gegevenstypen die verwijderd moeten worden.
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Wordt opgelost zodra de verwijdering is voltooid.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeAppcache()
chrome.browsingData.removeAppcache(
options: RemovalOptions,
callback?: function,
): Promise<void>
Verwijdert appcachegegevens van websites.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Dit probleem treedt op wanneer de appcachegegevens van websites zijn gewist.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeCache()
chrome.browsingData.removeCache(
options: RemovalOptions,
callback?: function,
): Promise<void>
Maakt de cache van de browser leeg.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Het probleem wordt opgelost wanneer de cache van de browser is gewist.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeCacheStorage()
chrome.browsingData.removeCacheStorage(
options: RemovalOptions,
callback?: function,
): Promise<void>
Verwijdert gegevens uit de cache van websites.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Dit probleem treedt op wanneer de cache van websites is leeggehaald.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeCookies()
chrome.browsingData.removeCookies(
options: RemovalOptions,
callback?: function,
): Promise<void>
Verwijdert de cookies en servercertificaten van de browser die binnen een bepaalde periode zijn gewijzigd.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Dit probleem wordt opgelost wanneer de cookies en servercertificaten van de browser zijn verwijderd.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeDownloads()
chrome.browsingData.removeDownloads(
options: RemovalOptions,
callback?: function,
): Promise<void>
Hiermee wordt de lijst met gedownloade bestanden in de browser gewist ( niet de gedownloade bestanden zelf).
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Dit probleem wordt opgelost wanneer de lijst met gedownloade bestanden van de browser is leeggehaald.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeFileSystems()
chrome.browsingData.removeFileSystems(
options: RemovalOptions,
callback?: function,
): Promise<void>
Verwijdert de bestandssysteemgegevens van websites.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Dit probleem wordt opgelost wanneer de bestandssystemen van websites zijn opgeschoond.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeFormData()
chrome.browsingData.removeFormData(
options: RemovalOptions,
callback?: function,
): Promise<void>
Verwijdert de in de browser opgeslagen formuliergegevens (automatisch invullen).
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Wordt opgelost wanneer de formuliergegevens van de browser zijn gewist.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeHistory()
chrome.browsingData.removeHistory(
options: RemovalOptions,
callback?: function,
): Promise<void>
Verwijdert de browsegeschiedenis.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Het probleem wordt opgelost wanneer de browsergeschiedenis is gewist.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeIndexedDB()
chrome.browsingData.removeIndexedDB(
options: RemovalOptions,
callback?: function,
): Promise<void>
Verwijdert de IndexedDB-gegevens van websites.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Dit probleem treedt op wanneer de IndexedDB-gegevens van websites zijn gewist.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeLocalStorage()
chrome.browsingData.removeLocalStorage(
options: RemovalOptions,
callback?: function,
): Promise<void>
Verwijdert de lokale opslaggegevens van websites.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Dit probleem treedt op wanneer de lokale opslag van websites is gewist.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removePasswords()
chrome.browsingData.removePasswords(
options: RemovalOptions,
callback?: function,
): Promise<void>
De ondersteuning voor het verwijderen van wachtwoorden via extensies is verwijderd. Deze functie heeft geen effect meer.
Verwijdert de in de browser opgeslagen wachtwoorden.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Dit probleem wordt opgelost wanneer de wachtwoorden van de browser zijn gewist.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removePluginData()
chrome.browsingData.removePluginData(
options: RemovalOptions,
callback?: function,
): Promise<void>
De ondersteuning voor Flash is verwijderd. Deze functie heeft geen effect meer.
Verwijdert de gegevens van de plug-ins.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Dit probleem wordt opgelost wanneer de gegevens van de plug-ins zijn gewist.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeServiceWorkers()
chrome.browsingData.removeServiceWorkers(
options: RemovalOptions,
callback?: function,
): Promise<void>
Verwijdert servicemedewerkers van websites.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Het probleem wordt opgelost wanneer de servicemedewerkers van de websites de benodigde informatie hebben vrijgegeven.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
removeWebSQL()
chrome.browsingData.removeWebSQL(
options: RemovalOptions,
callback?: function,
): Promise<void>
Verwijdert WebSQL-gegevens van websites.
Parameters
- opties
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:() => void
Retourneert
Promise<void>
Chrome 96+Dit probleem treedt op wanneer de WebSQL-databases van websites zijn leeggehaald.
Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.
settings()
chrome.browsingData.settings(
callback?: function,
): Promise<object>
Geeft aan welke gegevenstypen momenteel zijn geselecteerd in de gebruikersinterface van de instellingen 'Browsegegevens wissen'. Let op: sommige gegevenstypen die in deze API zijn opgenomen, zijn niet beschikbaar in de instellingeninterface, en sommige instellingen in de interface beheren meer dan één van de hier vermelde gegevenstypen.
Parameters
- terugbelverzoek
functie optioneel
De
callbackparameter ziet er als volgt uit:(result: object) => void
- resultaat
voorwerp
- dataRemovalPermitted
Alle typen zullen in het resultaat aanwezig zijn, met de waarde '
trueals ze mogen worden verwijderd (bijvoorbeeld door bedrijfsbeleid) enfalseals dat niet het geval is. - dataToRemove
Alle typen zullen in het resultaat aanwezig zijn, met de waarde '
trueals ze zowel geselecteerd zijn om te worden verwijderd als dat verwijdering is toegestaan, andersfalse. - opties
Retourneert
Promise<object>
Chrome 96+Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.