Web 服务器和 HTTP 服务器是无状态的,因此当 Web 服务器将网页发送到浏览器时,连接会被断开,服务器会忘记与用户相关的所有内容。那么浏览器和 Web 服务器是怎样记住用户信息的?cookie 被发明出来解决这个问题。 , x6 \( ^- b: ]6 G 当用户访问网页时,他们的名字、唯一 ID 或其他任何信息都可以存储在浏览器的 cookie 中。当用户下次又回到网页时,cookie 将记住他们的名字或唯一 ID。Cookie 只是存储在计算机浏览器中的小型文本文件。它们包含以下数据:( |8 g6 y r. P9 Z, V
保存数据的 Name-value 对
日期到期时,该 cookie 失效
应将其发送到的服务器的域和路径 ( `7 _. h! }0 u o' B' |' \" e
而cookie也有一些值得一提的限制:. r9 f( F4 X! T) X" T% ~. y
每个cookie的最大为 4096 字节
每个域最多20个cookie(每个浏览器略有不同)
Cookie是其自己的域名专用的(网站无法读取其他域的 Cookie,只能是它自己的)
大小限制适用于整个cookie,而不仅仅是它的值
在浏览器中,cookie通过 DOM 被公开为 document.cookies。, x' d6 I3 a) G- @, k& C$ ~
下面介绍如何用 JavaScript 在浏览器中设置、获取、更新和删除 Cookie 数据。 * r7 A S; j: zCreate Cookies/ X! V% z6 \! z9 b; g- f
用 JavaScript 在浏览器中设置 cookie 非常简单! 0 D, H2 y! c ], g" P7 \1、设置 Cookie * S9 [8 q8 L6 O+ V 以下是在浏览器中用 JavaScript 创建新 cookie 的执行代码:$ Q& y. a: @" S S9 r: d; v/ a
运行该代码后,打开浏览器,你应该能在开发者工具的 Application(Safari 或Chrome)或 Storage(Firefox)中找到该 cookie。6 N; A. B4 W- Y7 a2 d. J 2、设置 cookie 的过期时间1 ]! u9 ]# n n: B8 [! t
你还可以向 Cookie 中添加过期时间(UTC),告知浏览器应该在什么时候将其删除: 6 s- m; O' T. P7 b1 L
Read Cookies $ n' K& k( v. ]/ I. r. C6 J6 n 通过 document.cookie 对象,用 JavaScript 读取 cookie 也非常简单:- o" S, [' r F/ j9 N X 1、读取单个页面所有的 Cookie3 O5 E: K8 ` U2 r- c X
将单个页面的所有 cookie 作为字符串获取,每个 cookie 用分号分隔:9 W, Z. L9 }) B P5 a* s7 L