chrome.browsingData

Opis

użyć interfejsu chrome.browsingData API, aby usunąć dane przeglądania z lokalnego profilu użytkownika;

Uprawnienia

browsingData

Aby korzystać z tego interfejsu API, musisz zadeklarować uprawnienie "browsingData"pliku manifestu rozszerzenia.

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

Pojęcia i zastosowanie

Najprostszym przypadkiem użycia tego interfejsu API jest mechanizm oparty na czasie, który służy do czyszczenia danych przeglądania użytkownika. Kod powinien zawierać sygnaturę czasową wskazującą datę historyczną, po której dane przeglądania użytkownika powinny zostać usunięte. Ta sygnatura czasowa jest sformatowana jako liczba milisekund od początku epoki uniksowej (którą można pobrać z obiektu Date w JavaScript za pomocą metody getTime()).

Aby na przykład wyczyścić wszystkie dane przeglądania użytkownika z ostatniego tygodnia, możesz napisać kod w ten sposób:

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() umożliwia usunięcie różnych typów danych przeglądania za pomocą jednego wywołania i jest znacznie szybsza niż wywoływanie wielu bardziej szczegółowych metod. Jeśli jednak chcesz wyczyścić tylko jeden konkretny typ danych przeglądania (np. pliki cookie), bardziej szczegółowe metody stanowią czytelną alternatywę dla wywołania wypełnionego kodem 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 odbudować plik cookie na potrzeby konta synchronizacji po jego wyczyszczeniu. Dzięki temu synchronizacja będzie nadal działać, a dane będzie można ostatecznie usunąć z serwera. Jednak bardziej szczegółowe chrome.browsingData.removeCookies() może służyć do wyczyszczenia pliku cookie konta synchronizacji, a synchronizacja zostanie w tym przypadku wstrzymana.

Określone źródła

Aby usunąć dane dotyczące konkretnego pochodzenia lub wykluczyć z usuwania zestaw pochodzeń, możesz użyć parametrów RemovalOptions.originsRemovalOptions.excludeOrigins. Można je stosować tylko do plików cookie, pamięci podręcznej i pamięci masowej (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 źródeł, których ma dotyczyć ta zmiana. Pochodzenia są podzielone na 3 kategorie:

  • unprotectedWeb obejmuje ogólny przypadek witryn, które użytkownicy odwiedzają bez podejmowania żadnych specjalnych działań. Jeśli nie określisz parametru originTypes, interfejs API domyślnie usunie dane z niechronionych źródeł internetowych.
  • protectedWeb obejmuje źródła internetowe, które zostały zainstalowane jako aplikacje hostowane. Na przykład zainstalowanie gry Angry Birds chroni źródło https://chrome.angrybirds.com i usuwa je z kategorii unprotectedWeb. Zachowaj ostrożność podczas wywoływania usuwania danych z tych źródeł: upewnij się, że użytkownicy wiedzą, co się stanie, ponieważ spowoduje to nieodwracalne usunięcie danych z gry. Nikt nie chce przewracać małych domków świnek częściej niż to konieczne.
  • extension obejmuje źródła w schemacie chrome-extensions:. Usuwanie danych rozszerzenia to, powtórzmy, coś, do czego należy podchodzić z dużą ostrożnością.

Poprzedni przykład możemy zmodyfikować 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ład interfejsu browsingData API z repozytorium chrome-extension-samples.

Typy

DataTypeSet

Zbiór typów danych. Brakujące typy danych są interpretowane jako false.

Właściwości

  • appcache

    wartość logiczna opcjonalna

    pamięci podręczne aplikacji witryn,

  • Pamięć podręczna

    wartość logiczna opcjonalna

    pamięć podręczna przeglądarki;

  • cacheStorage

    wartość logiczna opcjonalna

    Chrome 72 lub nowsza

    Pamięć podręczna

  • ciastka

    wartość logiczna opcjonalna

    pliki cookie przeglądarki,

  • pobrane

    wartość logiczna opcjonalna

    listę pobierania w przeglądarce;

  • fileSystems

    wartość logiczna opcjonalna

    systemy plików witryn,

  • formData

    wartość logiczna opcjonalna

    Dane formularzy zapisane w przeglądarce.

  • historia

    wartość logiczna opcjonalna

    historia przeglądarki,

  • indexedDB

    wartość logiczna opcjonalna

    dane IndexedDB witryn,

  • localStorage

    wartość logiczna opcjonalna

    dane przechowywane lokalnie przez witryny;

  • hasła

    wartość logiczna opcjonalna

    zapisane hasła,

  • pluginData

    wartość logiczna opcjonalna

    Wycofane w Chrome 88

    Obsługa technologii Flash została usunięta. Ten typ danych zostanie zignorowany.

    dane wtyczek,

  • serverBoundCertificates

    wartość logiczna opcjonalna

    Wycofane w Chrome 76

    Obsługa certyfikatów powiązanych z serwerem została usunięta. Ten typ danych zostanie zignorowany.

    certyfikaty powiązane z serwerem,

  • serviceWorkers

    wartość logiczna opcjonalna

    Skrypty service worker.

  • webSQL

    wartość logiczna opcjonalna

    dane WebSQL witryn,

RemovalOptions

Opcje, które określają, jakie dane zostaną usunięte.

Właściwości

  • excludeOrigins

    string[] opcjonalne

    Chrome 74 lub nowsza

    Jeśli ta lista jest dostępna, dane dotyczące źródeł na niej wymienionych nie są usuwane. Nie można używać razem z usługą origins. Obsługiwane tylko w przypadku plików cookie, pamięci i pamięci podręcznej. Pliki cookie są wykluczane w przypadku całej domeny podlegającej rejestracji.

  • originTypes

    obiekt opcjonalny

    Obiekt, którego właściwości określają, które typy pochodzenia powinny zostać wyczyszczone. Jeśli ten obiekt nie zostanie określony, domyślnie wyczyszczone zostaną tylko „niechronione” źródła. Zanim dodasz „protectedWeb” lub „extensions”, upewnij się, że na pewno chcesz usunąć dane aplikacji.

    • rozszerzenie

      wartość logiczna opcjonalna

      rozszerzenia i aplikacje pakietowe zainstalowane przez użytkownika (zachowaj _szczególną_ ostrożność);

    • protectedWeb

      wartość logiczna opcjonalna

      Witryny zainstalowane jako aplikacje hostowane (zachowaj ostrożność!).

    • unprotectedWeb

      wartość logiczna opcjonalna

      zwykłych witryn,

  • źródła,

    [string, ...string[]] opcjonalnie

    Chrome 74 lub nowsza

    Jeśli ta lista jest dostępna, usuwane są tylko dane dotyczące źródeł z tej listy. Obsługiwane tylko w przypadku plików cookie, pamięci i pamięci podręcznej. Pliki cookie są usuwane z całej domeny, którą można zarejestrować.

  • od

    number opcjonalny

    Usuń dane zgromadzone w tym dniu lub po nim (w milisekundach od początku epoki, dostępne za pomocą metody getTime obiektu JavaScript Date). Jeśli nie jest podana, domyślnie przyjmuje wartość 0 (co spowoduje usunięcie wszystkich danych przeglądania).

Metody

remove()

chrome.browsingData.remove(
  options: RemovalOptions,
  dataToRemove: DataTypeSet,
)
: Promise<void>

Usuwa różne typy danych przeglądania przechowywanych w profilu użytkownika.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeAppcache()

chrome.browsingData.removeAppcache(
  options: RemovalOptions,
)
: Promise<void>

Czyści dane pamięci podręcznej aplikacji witryn.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeCache()

chrome.browsingData.removeCache(
  options: RemovalOptions,
)
: Promise<void>

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

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeCacheStorage()

Chrome 72 lub nowsza
chrome.browsingData.removeCacheStorage(
  options: RemovalOptions,
)
: Promise<void>

Usuwa dane z pamięci podręcznej witryn.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeCookies()

chrome.browsingData.removeCookies(
  options: RemovalOptions,
)
: Promise<void>

Usuwa pliki cookie przeglądarki i certyfikaty powiązane z serwerem, które zostały zmodyfikowane w określonym przedziale czasu.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeDownloads()

chrome.browsingData.removeDownloads(
  options: RemovalOptions,
)
: Promise<void>

Czyści listę pobranych plików w przeglądarce (nie same pobrane pliki).

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeFileSystems()

chrome.browsingData.removeFileSystems(
  options: RemovalOptions,
)
: Promise<void>

Usuwa dane systemu plików witryn.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeFormData()

chrome.browsingData.removeFormData(
  options: RemovalOptions,
)
: Promise<void>

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

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeHistory()

chrome.browsingData.removeHistory(
  options: RemovalOptions,
)
: Promise<void>

Czyści historię przeglądarki.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeIndexedDB()

chrome.browsingData.removeIndexedDB(
  options: RemovalOptions,
)
: Promise<void>

Usuwa dane IndexedDB witryn.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeLocalStorage()

chrome.browsingData.removeLocalStorage(
  options: RemovalOptions,
)
: Promise<void>

Usuwa dane zapisane w pamięci lokalnej witryn.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removePasswords()

chrome.browsingData.removePasswords(
  options: RemovalOptions,
)
: Promise<void>

Usuwa zapisane hasła z przeglądarki.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removePluginData()

Wycofane w Chrome 88
chrome.browsingData.removePluginData(
  options: RemovalOptions,
)
: Promise<void>

Obsługa technologii Flash została usunięta. Ta funkcja nie ma żadnego wpływu.

Usuwa dane wtyczek.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeServiceWorkers()

Chrome 72 lub nowsza
chrome.browsingData.removeServiceWorkers(
  options: RemovalOptions,
)
: Promise<void>

Czyści instancje robocze usług witryn.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

removeWebSQL()

chrome.browsingData.removeWebSQL(
  options: RemovalOptions,
)
: Promise<void>

Usuwa dane WebSQL witryn.

Parametry

Zwroty

  • Promise<void>

    Chrome w wersji 96 lub nowszej

settings()

chrome.browsingData.settings(): Promise<object>

Raportuje, jakie typy danych są obecnie wybrane w interfejsie ustawień „Wyczyść dane przeglądania”. Uwaga: niektóre typy danych uwzględnione w tym interfejsie API są niedostępne w interfejsie ustawień, a niektóre ustawienia interfejsu użytkownika kontrolują więcej niż 1 typ danych wymieniony tutaj.

Zwroty

  • Promise<object>

    Chrome w wersji 96 lub nowszej