chrome.browsingData

Opis

Aby usunąć dane przeglądania z lokalnego profilu użytkownika, użyj interfejsu API chrome.browsingData.

Uprawnienia

browsingData

Aby używać tego interfejsu API, musisz zadeklarować uprawnienia "browsingData" w pliku manifestu rozszerzenia.

{
  "name": "My extension",
  ...
  "permissions": [
    "browsingData",
  ],
  ...
}

Pojęcia i 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 przy użyciu 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 punktów początkowych

Dodanie właściwości originTypes do obiektu opcji interfejsów API umożliwia określenie typów i źródeł danych. Ź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ści originTypes, 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ło https://chrome.angrybirds.com oraz zostanie usunięte z kategorii unprotectedWeb. 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 schematu chrome-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 88

    Wycofaliśmy obsługę technologii Flash. Ten typ danych zostanie zignorowany.

    Wtyczki i skalowalnych danych.

  • serverBoundCertificates

    Wartość logiczna opcjonalna

    Wycofane od Chrome 76

    Wprowadziliś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 JavaScript Date). Jeśli atrybut nie jest podany, przyjmuje domyślnie wartość 0 (co powoduje usunięcie wszystkich danych przeglądania).

Metody

remove()

Obietnica .
chrome.browsingData.remove(
  options: RemovalOptions,
  dataToRemove: DataTypeSet,
  callback?: function,
)

Czyści różne typy danych przeglądania zapisane w profilu użytkownika.

Parametry

  • 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 w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeAppcache()

Obietnica .
chrome.browsingData.removeAppcache(
  options: RemovalOptions,
  callback?: function,
)

Usuwa witryny danych appcache.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeCache()

Obietnica .
chrome.browsingData.removeCache(
  options: RemovalOptions,
  callback?: function,
)

Czyści pamięć podręczną przeglądarki.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeCacheStorage()

Obietnica Chrome w wersji 72 lub nowszej
chrome.browsingData.removeCacheStorage(
  options: RemovalOptions,
  callback?: function,
)

Usuwa witryny dane w pamięci podręcznej.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeCookies()

Obietnica .
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

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeDownloads()

Obietnica .
chrome.browsingData.removeDownloads(
  options: RemovalOptions,
  callback?: function,
)

Powoduje wyczyszczenie listy pobranych plików w przeglądarce (nie samych pobranych plików).

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeFileSystems()

Obietnica .
chrome.browsingData.removeFileSystems(
  options: RemovalOptions,
  callback?: function,
)

Usuwa witryny danych systemu plików.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeFormData()

Obietnica .
chrome.browsingData.removeFormData(
  options: RemovalOptions,
  callback?: function,
)

Usuwa zapisane w przeglądarce dane formularzy (autouzupełnianie).

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeHistory()

Obietnica .
chrome.browsingData.removeHistory(
  options: RemovalOptions,
  callback?: function,
)

Czyści historię przeglądarki.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeIndexedDB()

Obietnica .
chrome.browsingData.removeIndexedDB(
  options: RemovalOptions,
  callback?: function,
)

Usuwa witryny Dane IndexedDB.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeLocalStorage()

Obietnica .
chrome.browsingData.removeLocalStorage(
  options: RemovalOptions,
  callback?: function,
)

Usuwa witryny pamięci lokalnej.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removePasswords()

Obietnica .
chrome.browsingData.removePasswords(
  options: RemovalOptions,
  callback?: function,
)

Czyści zapisane hasła przeglądarki.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removePluginData()

Obietnica Wycofane od Chrome 88
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

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeServiceWorkers()

Obietnica Chrome w wersji 72 lub nowszej
chrome.browsingData.removeServiceWorkers(
  options: RemovalOptions,
  callback?: function,
)

Usuwa witryny mechanizmy Service Worker.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeWebSQL()

Obietnica .
chrome.browsingData.removeWebSQL(
  options: RemovalOptions,
  callback?: function,
)

Usuwa witryny danych WebSQL.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Obietnica<void>

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

settings()

Obietnica .
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), lub false, 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 razie false.

Zwroty

  • Promise&lt;object&gt;

    Chrome w wersji 96 lub nowszej, .

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.