Tham gia vào chương trình dùng thử việc ngừng sử dụng đối với bộ nhớ chưa phân vùng của bên thứ ba, Trình chạy dịch vụ và API giao tiếp

Kể từ Chrome 115, bộ nhớ, trình chạy dịch vụ và API giao tiếp được phân vùng trong ngữ cảnh bên thứ ba. Ngoài việc bị tách biệt bằng chính sách cùng nguồn gốc, các API bị ảnh hưởng được dùng trong ngữ cảnh bên thứ ba cũng được phân tách theo trang web theo ngữ cảnh cấp cao nhất.

Các trang web chưa có thời gian triển khai tính năng hỗ trợ phân vùng bộ nhớ của bên thứ ba có thể tham gia thử nghiệm ngừng sử dụng để tạm thời bỏ phân vùng (tiếp tục tách biệt theo chính sách cùng nguồn gốc nhưng loại bỏ sự tách biệt theo trang web cấp cao nhất) và khôi phục hành vi trước đó của bộ nhớ, trình chạy dịch vụ và API truyền thông trong nội dung được nhúng trên trang web của họ.

Ngoài thử nghiệm ngừng sử dụng không phân chia theo phân vùng nói chung, bạn có thể tham gia thử nghiệm ngừng sử dụng tập trung chỉ dành cho window.sessionStorage. Bản dùng thử này được cung cấp do một số trang web cần phải di chuyển quy trình Firebase signInWithRedirect. Để biết thêm thông tin về quá trình di chuyển đó, hãy xem bài viết Các phương pháp hay nhất để sử dụng signInWith Redirect trên các trình duyệt chặn quyền truy cập vào bộ nhớ của bên thứ ba.

Để nhà phát triển có thêm thời gian thích ứng với cách triển khai mới của tính năng phân vùng bộ nhớ, các bản dùng thử ngừng sử dụng sẽ được cung cấp cho đến khi phát hành Chrome 127, dự kiến vào ngày 23 tháng 7 năm 2024. Thời gian thử nghiệm ngừng sử dụng sẽ kết thúc đối với người dùng Chrome phiên bản 111 đến 126 vào ngày 3 tháng 9 năm 2024.

Các phiên bản thử nghiệm hiện có về việc ngừng sử dụng

Kể từ Chrome 115, có hai phiên bản thử nghiệm ngừng sử dụng:

  1. DisableThirdPartyStoragePartitioning: cho phép một trang web cấp cao nhất huỷ phân vùng (tạm thời xoá sự tách biệt của trang web cấp cao nhất) trong bộ nhớ, trình chạy dịch vụ và API giao tiếp trong nội dung của bên thứ ba được nhúng trên các trang.
  2. DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning: cho phép trang web tách sessionStorage trên các thành phần điều hướng.

Dưới đây là tổng quan về thử nghiệm ngừng sử dụng và những điều cần biết. Nếu bạn muốn chia sẻ ý kiến phản hồi hoặc gặp bất kỳ vấn đề nào trong suốt thời gian dùng thử này, hãy cho chúng tôi biết trong Kho lưu trữ GitHub về việc ngừng sử dụng tính năng Bộ nhớ phân vùng.

DisableThirdPartyStoragePartitioning

Các API sau sẽ vẫn không được phân vùng trong ngữ cảnh của bên thứ ba nếu bạn đăng ký trang web cấp cao nhất trong bản dùng thử ngừng sử dụng DisableThirdPartyStoragePartitioning: Storage API (chẳng hạn như localStorage, sessionStorage, IndexedDB, Capacity và các API khác), Communran API (chẳng hạn như BroadcastChannel, SharedWorkers và WebLocks) và ServiceWorker API.

Ví dụ:

Sơ đồ phân vùng bộ nhớ

Để biết nội dung giải thích chi tiết hơn, hãy xem tài liệu giải thích về dự án.

DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning

Nếu bạn đăng ký chương trình dùng thử ngừng sử dụng DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning, việc di chuyển một thẻ đến một nguồn gốc đã đăng ký sẽ khiến tất cả iframe trên nhiều trang web có cùng nguồn gốc đó vẫn không được phân vùng trong Window.sessionStorage và chỉ trong thời gian hoạt động của thẻ cụ thể đó. Trong khi bản dùng thử ngừng sử dụng DisableThirdPartyStoragePartitioning ảnh hưởng đến tất cả các ngữ cảnh của bên thứ ba được nhúng trong nguồn gốc đã đăng ký, thì bản dùng thử ngừng sử dụng DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning sẽ đăng ký một nguồn gốc nhất định để nhận quyền truy cập không được phân vùng khi được nhúng vào ngữ cảnh của bên thứ ba.

Ví dụ:

Sơ đồ phân vùng bộ nhớ sau khi áp dụng mức phân loại chung.

Điều này ảnh hưởng như thế nào đến các nhà phát triển web?

Các trang web nên kiểm tra mức sử dụng bộ nhớ không được phân vùng, trình chạy dịch vụ và API giao tiếp trong ngữ cảnh của bên thứ ba, đồng thời chuẩn bị phân vùng của bên thứ ba trước khi các bản dùng thử ngừng sử dụng này hết hạn nếu cần. Mục đích là kết thúc các bản dùng thử ngừng sử dụng này bằng cách phát hành Chrome 127 vào ngày 3 tháng 9 năm 2024.

Để hướng dẫn trình duyệt tách bộ nhớ lưu trữ phân vùng trong nội dung của bên thứ ba được nhúng trên các trang của trình duyệt, các trang web cấp cao nhất cần đăng ký một hoặc cả hai bản dùng thử ngừng hoạt động và thêm(các) mã thông báo dùng thử tương ứng vào tiêu đề phản hồi HTTP (xem ví dụ chi tiết dưới đây).

Mỗi phiên bản thử nghiệm ngừng sử dụng đều có trên Windows, Mac, Linux, Chrome OS và Android.

Tham gia vào các chương trình thử nghiệm ngừng sử dụng

Sau đây là thông tin tổng quan ngắn gọn về cách tham gia vào một hoặc cả hai phiên bản dùng thử ngừng hoạt động. Để biết hướng dẫn chi tiết hơn, hãy xem bài viết Bắt đầu sử dụng bản dùng thử theo nguyên gốc.

  1. Chạy Chrome phiên bản 115 (trở lên) và đảm bảo bật cờ ThirdPartyStoragePartitioning.
  2. Xác minh rằng hành vi của nội dung của bên thứ ba được nhúng vào trang web cấp cao nhất bị hỏng do phân vùng bộ nhớ (nếu không thì bạn không cần tham gia Dùng thử tính năng này).
  3. Đăng ký tham gia chương trình dùng thử về việc ngừng sử dụng và nhận mã thông báo cho các miền của bạn bằng cách truy cập vào các trang sau:
    1. Đối với một trang web cấp cao nhất để tách bộ nhớ, trình chạy dịch vụ và API giao tiếp trong nội dung được nhúng của bên thứ ba: DisableThirdPartyStoragePartitioning
    2. Để một trang web cấp cao nhất huỷ phân vùng sessionStorage trên các điều hướng: DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
  4. Thêm mã thông báo dùng thử theo nguyên gốc vào trang của bạn:
    1. Đối với bản dùng thử DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning, bạn có thể thêm Origin-Trial: <DEPRECATION TRIAL TOKEN> vào tiêu đề phản hồi HTTP của trang web cấp cao nhất, trong đó <DEPRECATION TRIAL TOKEN> chứa mã thông báo mà bạn nhận được khi đăng ký tham gia thử nghiệm ngừng sử dụng. Bạn cũng có thể thực hiện việc này qua HTML ` .
    2. Đối với bản dùng thử DisableThirdPartyStoragePartitioning, mã thông báo phải được cung cấp qua thẻ <meta> HTML được chèn thông qua JavaScript. Phương pháp tiêu đề HTTP không được hỗ trợ.
  5. Tải trang web của bạn trong Chrome 115 trở lên và vẫn bật ThirdPartyStoragePartitioning, đồng thời xác minh rằng mọi vấn đề liên quan đến việc phân vùng đã được giảm thiểu đúng cách.
  6. Để ngừng tham gia thử nghiệm ngừng sử dụng, bạn chỉ cần xoá mã thông báo mà bạn đã thêm ở bước 2.

Bản dùng thử ngừng sử dụng DisableThirdPartyStoragePartitioning có hỗ trợ tính năng bản dùng thử theo nguyên gốc của bên thứ ba, nhưng tập lệnh bên thứ ba chèn mã thông báo phải được đánh giá trong khung cấp cao nhất trước khi iframe của bên thứ ba không áp dụng tính năng phân vùng được tải. Bản dùng thử ngừng sử dụng DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning không hỗ trợ các bản dùng thử theo nguyên gốc của bên thứ ba vì người được đăng ký phải là trang web cấp cao nhất tại một thời điểm nào đó trong vòng đời của thẻ nhất định. Hướng dẫn khắc phục sự cố với bản dùng thử theo nguyên gốc của Chrome đưa ra danh sách kiểm tra đầy đủ để đảm bảo mã thông báo của bạn được định cấu hình chính xác.

Chia sẻ phản hồi

Vui lòng gửi mọi ý kiến phản hồi hoặc vấn đề bạn gặp phải về Kho lưu trữ GitHub dành cho tính năng Dùng thử tính năng Lưu trữ phân vùng.