Cookie Store API

Baseline 2025 *
Newly available

Since June 2025, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

* Some parts of this feature may have varying levels of support.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Note: This feature is available in Service Workers.

Cookie Store API là một API bất đồng bộ để quản lý cookie, khả dụng trong cửa sổ và cả service worker.

Khái niệm và cách dùng

Phương pháp gốc để lấy và đặt cookie là làm việc với document.cookie để lấy và đặt thông tin cookie dưới dạng một chuỗi các cặp khóa/giá trị. Ngoài việc cách này cồng kềnh và dễ gây lỗi, nó còn có hàng loạt vấn đề trong bối cảnh phát triển web hiện đại.

Giao diện document.cookiesynchronous, đơn luồng và chặn. Khi ghi một cookie, bạn phải chờ trình duyệt cập nhật chuỗi chứa toàn bộ cookie. Ngoài ra, việc phụ thuộc vào document đồng nghĩa cookie không thể được truy cập bởi service worker, vì chúng không thể truy cập đối tượng document.

Cookie Store API cung cấp một phương thức cập nhật hơn để quản lý cookie. Nó asynchronous và dựa trên promise, vì vậy không chặn vòng lặp sự kiện. Nó không phụ thuộc vào Document, nên khả dụng với service worker. Các phương thức để lấy và đặt cookie cũng cung cấp phản hồi tốt hơn thông qua các thông báo lỗi. Điều này có nghĩa là nhà phát triển web không phải đặt cookie rồi lập tức đọc lại để kiểm tra xem thao tác đặt có thành công hay không.

Giao diện

CookieStore Experimental

Giao diện CookieStore cho phép lấy và đặt cookie.

CookieStoreManager Experimental

Giao diện CookieStoreManager cung cấp một đăng ký service worker để cho phép service worker đăng ký nhận các sự kiện thay đổi cookie.

CookieChangeEvent Experimental

Một CookieChangeEvent có tên change được phát tới các đối tượng CookieStore trong ngữ cảnh Window khi có bất kỳ thay đổi nào đối với cookie mà script nhìn thấy được.

ExtendableCookieChangeEvent

Một ExtendableCookieChangeEvent có tên cookiechange được phát trong các ngữ cảnh ServiceWorkerGlobalScope khi có bất kỳ thay đổi nào đối với cookie mà script nhìn thấy được và khớp với danh sách đăng ký thay đổi cookie của service worker.

Mở rộng cho các giao diện khác

ServiceWorkerGlobalScope.cookieStore Read only Experimental

Trả về một tham chiếu đến đối tượng CookieStore gắn với service worker.

ServiceWorkerRegistration.cookies Read only Experimental

Trả về một tham chiếu đến giao diện CookieStoreManager, cho phép ứng dụng web đăng ký và hủy đăng ký nhận các sự kiện thay đổi cookie.

Window.cookieStore Read only Experimental

Trả về một tham chiếu đến đối tượng CookieStore cho ngữ cảnh tài liệu hiện tại.

cookiechange event Experimental

Được kích hoạt khi có bất kỳ thay đổi cookie nào xảy ra và khớp với danh sách đăng ký thay đổi cookie của service worker.

Thông số kỹ thuật

Specification
Cookie Store API

Tương thích trình duyệt

api.CookieStore

api.CookieStoreManager

Xem thêm