Opis
Aby usunąć dane przeglądania z lokalnego profilu użytkownika, użyj interfejsu API chrome.browsingData
.
Uprawnienia
browsingData
Plik manifestu
Musisz zadeklarować plik „browsingData”. uprawnienia w pliku manifestu rozszerzenia na korzystanie z tego interfejsu API.
{
"name": "My extension",
...
"permissions": [
"browsingData",
],
...
}
Wykorzystanie
Najprostszym przypadkiem użycia tego interfejsu API jest ograniczony czasowo mechanizm do czyszczenia danych przeglądania użytkownika.
Kod powinien zawierać sygnaturę czasową, która wskazuje datę historyczną, po której użytkownik
dane przeglądania powinny zostać usunięte. Ta sygnatura czasowa jest podana jako liczba milisekund od czasu wywołania
epoka uniksowa (którą można pobrać z obiektu Date
JavaScriptu za pomocą metody getTime
).
Aby na przykład usunąć wszystkie dane przeglądania użytkownika z ostatniego tygodnia, możesz wpisać kod następujące:
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);
Metoda chrome.browsingData.remove
pozwala usuwać różne typy danych przeglądania za pomocą tagu
i będzie to trwało znacznie szybciej niż wywoływanie wielu bardziej konkretnych metod. Jeśli jednak
chcesz usunąć tylko określony typ danych przeglądania (np. pliki cookie), im bardziej szczegółowy
to czytelna alternatywa dla wywołania zawierającego
kod 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);
Jeśli użytkownik synchronizuje dane, chrome.browsingData.remove
może automatycznie ponownie utworzyć plik cookie
po wyczyszczeniu konta synchronizacji. Zapewni to nieprzerwane działanie synchronizacji i
może dojść do ich usunięcia z serwera. Jednak im bardziej szczegółowe
Za pomocą chrome.browsingData.removeCookies
można usunąć pliki cookie na koncie synchronizacji oraz
zostanie w tym przypadku wstrzymany.
Określone źródła
Aby usunąć dane z określonego źródła lub wykluczyć zbiór źródeł, możesz użyć funkcji
Parametry RemovalOptions.origins
i RemovalOptions.excludeOrigins
. Można je stosować tylko do
pliki cookie, pamięć podręczna oraz pamięć masową (CacheStorage, FileSystems, IndexedDB, LocalStorage, ServiceWorkers i
WebSQL).
chrome.browsingData.remove({
"origins": ["https://www.example.com"]
}, {
"cacheStorage": true,
"cookies": true,
"fileSystems": true,
"indexedDB": true,
"localStorage": true,
"serviceWorkers": true,
"webSQL": true
}, callback);
Typy źródeł
Dodanie właściwości originTypes
do obiektu options interfejsu API umożliwia określenie typów
i źródeł danych. Obecnie źródła dzielą się na 3 kategorie:
unprotectedWeb
obejmuje ogólny przypadek witryn odwiedzanych przez użytkowników, nie uwzględniając przy tym żadnych szczególnych działania. Jeśli nie określisz wartościoriginTypes
, interfejs API domyślnie usunie dane z niechronionych danych. źródeł witryn.- Reguła
protectedWeb
obejmuje te źródła internetowe, które zostały zainstalowane jako hostowane aplikacje. Na przykład zainstalowanie gry Angry Birds chroni źródłohttps://chrome.angrybirds.com
oraz zostanie usunięte z kategoriiunprotectedWeb
. Zachowaj ostrożność podczas usuwania tych źródeł: upewnij się, że użytkownicy wiedzą, co otrzymują, ponieważ taka sytuacja będzie nieodwracalna usunąć dane gry. Nikt nie lubi pukać małych świń do komnat częściej, niż jest to konieczne. extension
obejmuje źródła w ramach schematuchrome-extensions:
. Usunięcie danych rozszerzenia jest następujące: znowu jest coś, na co należy bardzo uważać.
Mogliśmy dostosować poprzedni przykład tak, aby usuwać tylko dane z chronionych witryn:
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);
Przykłady
Aby wypróbować ten interfejs API, zainstaluj przykładowy interfejs API przeglądania ze strony chrome-extension-samples. z repozytorium.
Typy
DataTypeSet
Zbiór typów danych. Brakujące typy danych są interpretowane jako false
.
Właściwości
-
pamięć podręczna aplikacji
Wartość logiczna opcjonalna
Witryny pamięci podręcznej aplikacji.
-
Pamięć podręczna
Wartość logiczna opcjonalna
Pamięć podręczna przeglądarki.
-
cacheStorage
Wartość logiczna opcjonalna
Chrome w wersji 72 lub nowszej .Pamięć podręczna
-
ciastka
Wartość logiczna opcjonalna
Pliki cookie przeglądarki.
-
pobrane
Wartość logiczna opcjonalna
Lista pobranych plików w przeglądarce.
-
fileSystems
Wartość logiczna opcjonalna
Witryny do systemów plików.
-
formData
Wartość logiczna opcjonalna
Dane formularzy przechowywane przez przeglądarkę.
-
historia
Wartość logiczna opcjonalna
historię przeglądarki;
-
indexedDB
Wartość logiczna opcjonalna
Witryny Dane IndexedDB.
-
localStorage
Wartość logiczna opcjonalna
Witryny pamięci lokalnej.
-
hasła
Wartość logiczna opcjonalna
Zapisane hasła.
-
pluginData
Wartość logiczna opcjonalna
Wycofane od Chrome 88Wycofaliśmy obsługę technologii Flash. Ten typ danych zostanie zignorowany.
Wtyczki i skalowalnych danych.
-
serverBoundCertificates
Wartość logiczna opcjonalna
Wycofane od Chrome 76Wprowadziliśmy obsługę certyfikatów powiązanych z serwerem. Ten typ danych zostanie zignorowany.
Certyfikaty powiązane z serwerem.
-
serviceWorkers
Wartość logiczna opcjonalna
Skrypty service worker.
-
webSQL
Wartość logiczna opcjonalna
Witryny danych WebSQL.
RemovalOptions
Opcje, które dokładnie określają, jakie dane zostaną usunięte.
Właściwości
-
excludeOrigins
string[] opcjonalnie
Chrome w wersji 74 lub nowszej .Jeśli dane źródła są obecne na tej liście, nie można ich usunąć. Nie mogą być używane razem z usługą
origins
. Obsługiwane tylko w przypadku plików cookie, pamięci i pamięci podręcznej. Pliki cookie są wykluczane dla całej domeny, którą można zarejestrować. -
originTypes
obiekt opcjonalny
Obiekt, którego właściwości określają, które typy źródeł powinny zostać wyczyszczone. Jeśli ten obiekt nie jest określony, domyślnie usuwany jest tylko stan „niezabezpieczony” źródeł. Przed dodaniem elementu „ProtectWeb” upewnij się, że naprawdę chcesz usunąć dane aplikacji. lub „extensions”.
-
rozszerzenie
Wartość logiczna opcjonalna
Rozszerzenia i aplikacje w pakietach zainstalowane przez użytkownika (_really_ zachowaj ostrożność).
-
protectedWeb
Wartość logiczna opcjonalna
Witryny, które zostały zainstalowane jako aplikacje hostowane (zachowaj ostrożność).
-
unprotectedWeb
Wartość logiczna opcjonalna
Zwykłe witryny.
-
-
punkty początkowe
[ciąg, ...ciąg[]] opcjonalny
Chrome w wersji 74 lub nowszej .Jeśli ta opcja jest dostępna, usuwane są tylko dane dotyczące źródeł na tej liście. Obsługiwane tylko w przypadku plików cookie, pamięci i pamięci podręcznej. Pliki cookie są usuwane dla całej domeny, którą można zarejestrować.
-
od
liczba opcjonalnie
Usuń dane zgromadzone w tym dniu lub później, wyrażone w milisekundach od początku epoki (dostępne za pomocą metody
getTime
obiektu JavaScriptDate
). Jeśli atrybut nie jest podany, przyjmuje domyślnie wartość 0 (co powoduje usunięcie wszystkich danych przeglądania).
Metody
remove()
chrome.browsingData.remove(
options: RemovalOptions,
dataToRemove: DataTypeSet,
callback?: function,
)
Czyści różne typy danych przeglądania zapisane w profilu użytkownika.
Parametry
-
Opcje
-
dataToRemove
Zbiór typów danych do usunięcia.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeAppcache()
chrome.browsingData.removeAppcache(
options: RemovalOptions,
callback?: function,
)
Usuwa witryny danych appcache.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeCache()
chrome.browsingData.removeCache(
options: RemovalOptions,
callback?: function,
)
Czyści pamięć podręczną przeglądarki.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeCacheStorage()
chrome.browsingData.removeCacheStorage(
options: RemovalOptions,
callback?: function,
)
Usuwa witryny dane w pamięci podręcznej.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeCookies()
chrome.browsingData.removeCookies(
options: RemovalOptions,
callback?: function,
)
Usuwa pliki cookie przeglądarki i certyfikaty powiązane z serwerem zmodyfikowane w określonym przedziale czasu.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeDownloads()
chrome.browsingData.removeDownloads(
options: RemovalOptions,
callback?: function,
)
Powoduje wyczyszczenie listy pobranych plików w przeglądarce (nie samych pobranych plików).
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeFileSystems()
chrome.browsingData.removeFileSystems(
options: RemovalOptions,
callback?: function,
)
Usuwa witryny danych systemu plików.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeFormData()
chrome.browsingData.removeFormData(
options: RemovalOptions,
callback?: function,
)
Usuwa zapisane w przeglądarce dane formularzy (autouzupełnianie).
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeHistory()
chrome.browsingData.removeHistory(
options: RemovalOptions,
callback?: function,
)
Czyści historię przeglądarki.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeIndexedDB()
chrome.browsingData.removeIndexedDB(
options: RemovalOptions,
callback?: function,
)
Usuwa witryny Dane IndexedDB.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeLocalStorage()
chrome.browsingData.removeLocalStorage(
options: RemovalOptions,
callback?: function,
)
Usuwa witryny pamięci lokalnej.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removePasswords()
chrome.browsingData.removePasswords(
options: RemovalOptions,
callback?: function,
)
Czyści zapisane hasła przeglądarki.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removePluginData()
chrome.browsingData.removePluginData(
options: RemovalOptions,
callback?: function,
)
Wycofaliśmy obsługę technologii Flash. Ta funkcja nie wywołuje żadnych skutków.
Usuwa wtyczki i skalowalnych danych.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeServiceWorkers()
chrome.browsingData.removeServiceWorkers(
options: RemovalOptions,
callback?: function,
)
Usuwa witryny mechanizmy Service Worker.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
removeWebSQL()
chrome.browsingData.removeWebSQL(
options: RemovalOptions,
callback?: function,
)
Usuwa witryny danych WebSQL.
Parametry
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
settings()
chrome.browsingData.settings(
callback?: function,
)
Raportuje, jakie typy danych są obecnie zaznaczone w obszarze „Wyczyść dane przeglądania” ustawień. Uwaga: niektóre typy danych w tym interfejsie API nie są dostępne w interfejsie ustawień, a niektóre ustawienia interfejsu pozwalają zarządzać więcej niż jednym typem danych wymienionym w tym miejscu.
Parametry
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(result: object) => void
-
wynik
Obiekt
-
dataRemovalPermitted
W wyniku będą występować wszystkie typy tych typów z wartościami
true
, jeśli można je usunąć (np. przez zasadę przedsiębiorstwa), lubfalse
, jeśli nie jest to możliwe. -
dataToRemove
W wyniku będą obecne wszystkie typy z wartością
true
, jeśli obie zostaną wybrane i można je usunąć. W przeciwnym raziefalse
. -
Opcje
-
-
Zwroty
-
Promise<object>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.