Đặt cookie thời gian JavaScript
Tiêu đề phản hồi HTTP 9 được sử dụng để gửi cookie từ máy chủ đến tác nhân người dùng, để tác nhân người dùng có thể gửi lại cho máy chủ sau. Để gửi nhiều cookie, nhiều tiêu đề 9 phải được gửi trong cùng một phản hồi Show Cảnh báo. Các trình duyệt chặn mã JavaScript giao diện người dùng truy cập tiêu đề 9, theo yêu cầu của thông số Tìm nạp, xác định 9 là tên tiêu đề phản hồi bị cấm phải được lọc ra khỏi bất kỳ phản hồi nào tiếp xúc với mã giao diện người dùngĐể biết thêm thông tin, hãy xem hướng dẫn về Sử dụng cookie HTTP Loại tiêu đề Tiêu đề phản hồiTên tiêu đề bị cấmnoTên tiêu đề phản hồi bị cấmcócú pháp
Thuộc tính 1Xác định tên cookie và giá trị của nó. Định nghĩa cookie bắt đầu bằng một cặp tên-giá trị Một 2 có thể chứa bất kỳ ký tự US-ASCII nào ngoại trừ. ký tự điều khiển, dấu cách hoặc tab. Nó cũng không được chứa các ký tự phân cách như sau. 3Một 4 có thể tùy chọn được gói trong dấu ngoặc kép và bao gồm bất kỳ ký tự US-ASCII nào ngoại trừ ký tự điều khiển, Khoảng trắng, dấu ngoặc kép, dấu phẩy, dấu chấm phẩy và dấu gạch chéo ngượcmã hóa. Nhiều triển khai thực hiện mã hóa URL trên các giá trị cookie. Tuy nhiên, điều này không bắt buộc bởi đặc tả RFC. Mã hóa URL giúp đáp ứng các yêu cầu về ký tự được phép cho 4Ghi chú. Một số 2 có ngữ nghĩa cụ thểtiền tố 7. Các cookie có tên bắt đầu bằng 7 (dấu gạch ngang là một phần của tiền tố) phải được đặt bằng cờ 9 từ một trang bảo mật (HTTPS)tiền tố 00. Các cookie có tên bắt đầu bằng 00 phải được đặt bằng cờ 9, phải từ một trang bảo mật (HTTPS), không được chỉ định tên miền (và do đó, không được gửi đến tên miền phụ) và đường dẫn phải là 03 04 Tùy chọnCho biết thời gian tồn tại tối đa của cookie dưới dạng dấu thời gian ngày HTTP. Xem 05 để biết định dạng bắt buộcNếu không được chỉ định, cookie sẽ trở thành cookie phiên. Một phiên kết thúc khi máy khách tắt, sau đó cookie phiên sẽ bị xóa Cảnh báo. Nhiều trình duyệt web có tính năng khôi phục phiên sẽ lưu tất cả các tab và khôi phục chúng vào lần sử dụng trình duyệt tiếp theo. Cookie phiên cũng sẽ được khôi phục, như thể trình duyệt chưa bao giờ bị đóng Khi một ngày 06 được đặt, thời hạn liên quan đến máy khách mà cookie đang được đặt, không phải máy chủ 07 Tùy chọnCho biết số giây cho đến khi cookie hết hạn. Số 0 hoặc số âm sẽ hết hạn cookie ngay lập tức. Nếu cả 06 và 09 đều được đặt, thì 09 sẽ được ưu tiên 11 Tùy chọnXác định máy chủ mà cookie sẽ được gửi đến Nếu bị bỏ qua, thuộc tính này sẽ mặc định là máy chủ lưu trữ của URL tài liệu hiện tại, không bao gồm tên miền phụ Trái ngược với thông số kỹ thuật trước đó, các dấu chấm hàng đầu trong tên miền ( 12) bị bỏ quaNhiều giá trị máy chủ lưu trữ/miền không được phép nhưng nếu một miền được chỉ định thì các miền con luôn được bao gồm 13 Tùy chọnCho biết đường dẫn phải tồn tại trong URL được yêu cầu để trình duyệt gửi tiêu đề 14Ký tự gạch chéo lên ( 03) được hiểu là dấu phân cách thư mục và các thư mục con cũng được so khớp. Ví dụ: đối với 16,
04 Tùy chọnCho biết rằng cookie chỉ được gửi đến máy chủ khi có yêu cầu với lược đồ 05 (ngoại trừ trên máy chủ cục bộ) và do đó, có khả năng chống lại các cuộc tấn công trung gian cao hơnGhi chú. Đừng cho rằng 04 ngăn chặn tất cả quyền truy cập vào thông tin nhạy cảm trong cookie (khóa phiên, chi tiết đăng nhập, v.v. ). Các cookie có thuộc tính này vẫn có thể được đọc/sửa đổi bằng quyền truy cập vào đĩa cứng của máy khách hoặc từ JavaScript nếu thuộc tính cookie 07 không được đặtCác trang web không an toàn ( 08) không thể đặt cookie có thuộc tính 04 (kể từ Chrome 52 và Firefox 52). Đối với Firefox, yêu cầu 05 bị bỏ qua khi thuộc tính 04 được đặt bởi localhost (kể từ Firefox 75) 07 Tùy chọnCấm JavaScript truy cập cookie, ví dụ: thông qua thuộc tính 33. Lưu ý rằng một cookie đã được tạo bằng 07 sẽ vẫn được gửi cùng với các yêu cầu do JavaScript khởi tạo, chẳng hạn như khi gọi 35 hoặc 36. Điều này giảm thiểu các cuộc tấn công chống lại cross-site scripting (XSS) 37 Tùy chọnKiểm soát việc cookie có được gửi cùng với các yêu cầu trên nhiều trang hay không, cung cấp một số biện pháp bảo vệ chống lại các cuộc tấn công giả mạo yêu cầu trên nhiều trang (CSRF) Các giá trị thuộc tính có thể là 38có nghĩa là trình duyệt chỉ gửi cookie cho các yêu cầu cùng trang, nghĩa là các yêu cầu bắt nguồn từ cùng một trang đã đặt cookie. Nếu một yêu cầu bắt nguồn từ một miền hoặc lược đồ khác (ngay cả với cùng một miền), thì sẽ không có cookie nào có thuộc tính 39 được gửi 00có nghĩa là cookie không được gửi theo yêu cầu giữa các trang, chẳng hạn như yêu cầu tải hình ảnh hoặc khung, nhưng được gửi khi người dùng điều hướng đến trang gốc từ một trang bên ngoài (ví dụ: khi theo liên kết). Đây là hành vi mặc định nếu thuộc tính 01 không được chỉ định 02có nghĩa là trình duyệt gửi cookie với cả yêu cầu trên nhiều trang và cùng trang. Thuộc tính 04 cũng phải được đặt khi đặt giá trị này, như vậy là 04Ghi chú. Các tiêu chuẩn liên quan đến SameSite Cookies đã thay đổi gần đây, sao cho
Xem bảng Tương thích trình duyệt để biết thông tin về cách triển khai trình duyệt cụ thể (các hàng. "______501. Mặc định là 00", "______501. Yêu cầu ngữ cảnh an toàn" và " 01. nhận biết sơ đồ URL ("sơ đồ")")ví dụcookie phiênCookie phiên bị xóa khi máy khách tắt. Cookie là cookie phiên nếu chúng không chỉ định thuộc tính 06 hoặc 09
Cookie vĩnh viễnCookie vĩnh viễn bị xóa vào một ngày cụ thể ( 06) hoặc sau một khoảng thời gian cụ thể ( 09) chứ không phải khi khách hàng đóng cửa 0 1miền không hợp lệCookie cho miền không bao gồm máy chủ đã đặt nó sẽ bị tác nhân người dùng từ chối Cookie sau sẽ bị từ chối nếu được đặt bởi máy chủ được lưu trữ trên 99 0Cookie cho tên miền phụ của tên miền phục vụ sẽ bị từ chối Cookie sau sẽ bị từ chối nếu được đặt bởi máy chủ được lưu trữ trên 90 3tiền tố cookieTên cookie có tiền tố là 7 hoặc 00 chỉ có thể được sử dụng nếu chúng được đặt bằng thuộc tính 9 từ nguồn gốc an toàn (HTTPS)Ngoài ra, các cookie có tiền tố 00 phải có đường dẫn là 03 (có nghĩa là bất kỳ đường dẫn nào tại máy chủ) và không được có thuộc tính 96Cảnh báo. Đối với những khách hàng không triển khai tiền tố cookie, bạn không thể tin tưởng vào những đảm bảo bổ sung này và cookie có tiền tố sẽ luôn được chấp nhận Làm cách nào để đặt thời gian hết hạn cookie trong JavaScript?Chỉ cần đặt thông số hết hạn thành ngày cũ . tài liệu. cookie = "tên người dùng=; hết hạn=Thứ năm, ngày 01 tháng 1 năm 1970 00. 00. 00 UTC; .
Làm cách nào để đặt cookie hết hạn sau 1 giờ trong JavaScript?Bạn có thể viết cái này ngắn gọn hơn. var now = new Date(); . setTime(bây giờ. getTime() + 1 * 3600 * 1000); tài liệu.
Làm cách nào để đặt đường dẫn cookie trong JavaScript?cookie = cName + "=" + cValue + "; " + hết hạn + "; path=/"; . Chức năng này sẽ tạo một cookie có tên là “tên người dùng”, giá trị “Max Brown” với ngày hết hạn là 30 ngày kể từ khi được tạo. // Apply setCookie setCookie('username', username, 30); This code defines a function, setCookie(). This function will create a cookie with the name “username”, value “Max Brown” with an expiration date of 30 days from the time it was created.
Thời gian hết hạn cookie là gì?Cookie có thể hết hạn. Cookie không có ngày hết hạn được chỉ định sẽ hết hạn khi đóng trình duyệt. Chúng thường được gọi là cookie phiên vì chúng bị xóa sau khi phiên trình duyệt kết thúc (khi trình duyệt bị đóng). Các cookie có ngày hết hạn trong quá khứ sẽ bị xóa khỏi trình duyệt |