JSP 中 cookie 的工作方式?


Cookie 通常设置在 HTTP 头中(尽管 Javascript 也可直接在浏览器中设置 cookie)。设置 cookie 的 JSP 可能发送看上去类似下文的标头 −

HTTP/1.1 200 OK
Date: Fri, 04 Feb 2000 21:03:38 GMT
Server: Apache/1.3.9 (UNIX) PHP/4.0b3
Set-Cookie: name = xyz; expires = Friday, 04-Feb-07 22:03:38 GMT;
path = /; domain = tutorialspoint.com
Connection: close
Content-Type: text/html

如你所见,**Set-Cookie 标头** 包含 **name-value 对、GMT 日期、路径** 以及 **域名**。名称和值将采用 URL 编码方式。**expires** 字段是发送给浏览器的指令,让其在指定时间和日期后 **“忘记”** cookie。

如果浏览器配置为存储 cookie,浏览器会将此信息保存在过期日期前。如果用户将浏览器指向与 cookie 路径和域名匹配的任意页面,它会将 cookie 重新发送到服务器。浏览器标头可能看上去类似下文 −

GET / HTTP/1.0
Connection: Keep-Alive
User-Agent: Mozilla/4.6 (X11; I; Linux 2.2.6-15apmac ppc)
Host: zink.demon.co.uk:1126
Accept: image/gif, */*
Accept-Encoding: gzip
Accept-Language: en
Accept-Charset: iso-8859-1,*,utf-8
Cookie: name = xyz

然后通过请求方法 **request.getCookies()** 访问此 JSP 脚本,该方法会返回一个 Cookie 对象的字段。

更新时间: 2019-07-30

203 浏览

开启您的 职业

完成课程并获得认证

开始学习
广告