Od wersji Chrome 115 interfejsy API pamięci, service workerów i 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 odłączyć (czyli kontynuować izolację zgodnie z zasadami dotyczącymi tego samego źródła, ale usunąć izolację na poziomie witryny najwyższego poziomu) i przywrócić wcześniejsze działanie interfejsów API pamięci, usług i komunikacji w ramach treści wbudowanych w ich witrynach.
Oprócz ogólnego okresu próbnego bez partycjonowania możesz wziąć udział w okresie próbnym wycofywania tylko w przypadku window.sessionStorage
.
Ta wersja próbna jest dostępna, ponieważ niektóre witryny muszą przenieść proces signInWithRedirect
z Firebase. Więcej informacji o tej migracji znajdziesz w tym artykule.
Dostępne wersje próbne wycofanych funkcji
Od Chrome 115 zaczniemy prowadzić 2 testy 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.
Dzięki temu właściciele stron będą mogli wykrywać i rozwiązywać problemy, zanim wprowadzimy partycjonowanie stron innych firm w Chrome 115.
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 partycjonowanego miejsca na dane.
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 wyjaśniającym.
DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
Jeśli weźmiesz udział w próbnym wycofaniu 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, podczas gdy test DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
dotyczy rejestrowania danego pochodzenia w celu uzyskania dostępu bez podziału w przypadku umieszczenia w kontekście zewnętrznym.
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 workera i komunikacji. W razie potrzeby należy się przygotować do partycjonowania w innych firmach przed wygaśnięciem okresu testowego. Chcemy zakończyć te testy wycofywania w czasie wydania Chrome 127 23 lipca 2024 r. Okres próbny w przypadku wersji Chrome od 111 do 126 wygaśnie 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 testowa 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).
- Aby zarejestrować się w programie wersji próbnej przed wycofaniem i uzyskać token dla swoich domen, wykonaj te czynności:
- 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 witrynie:
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 witrynie:
- 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 otrzymałeś/otrzymałaś podczas rejestracji w ramach wersji próbnej wycofania. 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 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 partycjonowanego magazynu danych.