Od wersji Chrome 115 miejsce na dane, service workery i interfejsy API komunikacji są partycjonowane w kontekstach innych firm. Oprócz izolacji przez zasadę dotyczącą tego samego pochodzenia interfejsy API używane w kontekstach innych firm są też oddzielone przez witrynę w kontekście najwyższego poziomu.
Witryny, które nie miały czasu na wdrożenie obsługi partycjonowania pamięci przez osoby trzecie, mogą wziąć udział w testach wycofywania, aby tymczasowo odpartycjonować (nadal izolować według zasady „tego samego źródła”, ale usunąć izolowanie na poziomie najwyższego poziomu) i przywrócić wcześniejsze działanie interfejsów API pamięci, usług i komunikacji w zawartych w nich treściach.
Oprócz ogólnego okresu próbnego bez partycjonowania możesz wziąć udział w okresie próbnym wycofywania tylko dla window.sessionStorage
.
Ta wersja próbna jest dostępna, ponieważ niektóre witryny muszą przenieść proces signInWithRedirect
do Firebase. Więcej informacji o tej migracji znajdziesz w artykule Sprawdzone metody korzystania z funkcji signInWithRedirect w przeglądarkach, które blokują dostęp do miejsca na dane innych firm.
Aby dać deweloperom więcej czasu na dostosowanie się do nowej implementacji partycjonowania pamięci, testy wycofywania będą dostępne do czasu wydania Chrome 127, zaplanowanego na 23 lipca 2024 r. W przypadku użytkowników Chrome w wersjach 111–126 okres testowania wycofania wygaśnie 3 września 2024 r.
Dostępne wersje próbne wycofanych funkcji
Od wersji 115 Chrome dostępne są 2 okresy próbne wycofywania:
DisableThirdPartyStoragePartitioning
: umożliwia witrynie najwyższego poziomu odebranie partycji (tymczasowe usunięcie izolacji przez witrynę najwyższego poziomu) w interfejsach API pamięci, service workerów i komunikacji w treściach innych firm umieszczonych na jej stronach.DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
: pozwala witrynie na odseparowaniesessionStorage
w trakcie nawigacji.
Poniżej znajdziesz omówienie okresu testowego wycofywania i informacje o tym, czego możesz się spodziewać. Jeśli chcesz podzielić się opinią lub napotkasz problemy podczas testów, daj nam znać w repozytorium na GitHubie poświęconym testom wycofywania obsługi partycjonowanego magazynu danych.
DisableThirdPartyStoragePartitioning
Jeśli zarejestrujesz witrynę najwyższego poziomu w programie DisableThirdPartyStoragePartitioning
wycofania z użycia, te interfejsy API pozostaną niepartycjonowane w kontekstach podmiotów zewnętrznych: interfejsy API miejsca na dane (np. localStorage, sessionStorage, IndexedDB, Quota i inne), interfejsy API komunikacji (np. BroadcastChannel, SharedWorkers i WebLocks) oraz interfejs ServiceWorker API.
Przykład:
Więcej informacji znajdziesz w artykule na temat projektów.
DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
Jeśli weźmiesz udział w próbie wyłączenia DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
, przejście na kartę z zarejestrowanym źródłem spowoduje, że wszystkie elementy iframe w witrynach zewnętrznych tego samego źródła pozostaną nieprzydzielone tylko w przypadku Window.sessionStorage
i tylko przez czas trwania danej karty.
Test DisableThirdPartyStoragePartitioning
dotyczy wszystkich kontekstów zewnętrznych umieszczonych w zarejestrowanym pochodzeniu, natomiast test DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
dotyczy rejestrowania danego pochodzenia w celu uzyskania dostępu bez podziału, gdy jest ono umieszczane w kontekstach zewnętrznych.
Przykład:
Co to oznacza dla programistów stron internetowych?
Witryny powinny sprawdzić, jak są wykorzystywane w kontekstach innych firm interfejsy API niepartycjonowanego magazynu, Service Worker i interfejsy API do komunikacji. W razie potrzeby należy się przygotować do partycjonowania w innych firmach przed wygaśnięciem okresu testowego. Chcemy zakończyć testy wycofywania z wydaniem Chrome 127 3 września 2024 r.
Aby polecić przeglądarce odblokowanie pamięci w ramach treści innych firm wbudowanych na stronach, witryny najwyższego poziomu muszą zarejestrować się w jednym lub obu testach wycofywania i dodać odpowiednie tokeny testowe do nagłówków odpowiedzi HTTP (patrz szczegółowy przykład poniżej).
Każda wersja próbna wycofania jest dostępna w systemach Windows, Mac, Linux, ChromeOS i Android.
Uczestniczyć w testach wycofywania
Poniżej znajdziesz krótkie omówienie tego, jak wziąć udział w jednym lub obu testach wycofania. Aby uzyskać bardziej szczegółowe instrukcje, przeczytaj artykuł Pierwsze kroki z testami pochodzenia.
- Uruchom Chrome w wersji 115 (lub nowszej) i sprawdź, czy flaga
ThirdPartyStoragePartitioning
jest włączona. - Sprawdź, czy działanie treści innych firm umieszczonych w Twojej witrynie najwyższego poziomu jest zaburzone przez partycjonowanie pamięci (jeśli nie, nie musisz uczestniczyć w testach wycofywania).
- Zarejestruj się w programie wersji próbnej przed wycofaniem i pobierz token dla swoich domen, korzystając z tych stron:
- Aby witryna najwyższego poziomu mogła odpartycjonować miejsce na dane, usługi dla programistów i interfejsy API komunikacji w treściach zewnętrznych wbudowanych w witrynę:
DisableThirdPartyStoragePartitioning
- Aby witryna najwyższego poziomu nie dzieliła sessionStorage na podstawie nawigacji:
DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
- Aby witryna najwyższego poziomu mogła odpartycjonować miejsce na dane, usługi dla programistów i interfejsy API komunikacji w treściach zewnętrznych wbudowanych w witrynę:
- Dodaj token wersji próbnej do swojej strony:
- W przypadku wersji próbnej
DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
możesz dodać parametrOrigin-Trial: <DEPRECATION TRIAL TOKEN>
do nagłówka odpowiedzi HTTP witryny najwyższego poziomu. Wartość parametru<DEPRECATION TRIAL TOKEN>
to token, który otrzymasz podczas rejestracji w ramach wersji próbnej z wycofaniem. Możesz to też zrobić za pomocą kodu HTML: . - W przypadku wersji próbnej
DisableThirdPartyStoragePartitioning
token musi być przekazany za pomocą tagu HTML<meta>
wstrzykniętego za pomocą JavaScriptu. Metoda nagłówka HTTP nie jest obsługiwana.
- W przypadku wersji próbnej
- Otwórz witrynę w Chrome 115 (lub nowszej wersji) z opcją
ThirdPartyStoragePartitioning
nadal włączoną i sprawdź, czy wszystkie problemy związane z partycjonowaniem zostały odpowiednio rozwiązane. - Aby zrezygnować z testowania wersji wycofywanej, usuń token, który został dodany w kroku 2.
Wersja próbna DisableThirdPartyStoragePartitioning
obsługuje testy pochodzenia zewnętrznego, ale skrypt zewnętrzny, który wstrzykuje token, musi zostać oceniony w ramce najwyższego poziomu, zanim zostanie załadowany element iframe zewnętrzny, do którego nie zostanie zastosowane partycjonowanie. Test wycofania DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
nie obsługuje testów pochodzenia zewnętrznego, ponieważ w przypadku rejestracji w jakimś momencie w cyklu życia danej karty strona musi być stroną najwyższego poziomu. Przewodnik na temat rozwiązywania problemów z testami pochodzenia w Chrome zawiera pełną listę kontrolną, która pomoże Ci sprawdzić, czy token jest prawidłowo skonfigurowany.
Podziel się opinią
Prześlij opinię lub informacje o problemach do repozytorium na GitHubie dotyczącego wycofywania partycjonowanej pamięci masowej.