- 缓存:为了提高访问网页的速度,浏览器将曾经访问的网页内容(包括图片以及cookie文件等)存放在电脑里。这个存放空间称为缓存。缓存存在于发送请求的客户端(个人设备),也存在于服务器端(Redis,CDN了解一下)。
- Cookies: 是一种能够让网站服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术 通常器文本文件,记录用户ID、密码、浏览过的网页、停留的时间等信息。cookies属于缓存的一种,存在于发送请求的客户端。通常有两种方式给浏览器设置/获取cookie,HTTP Response Headers中的Set-Cookies Header和HTTP Request Header中的Cookie Header,以及JavaScript对document.cookie进行的赋值取值。浏览器存放Cookie时应包含这些字段:name,value,expiry-time,domain,path,creation-time,last-access-time,persistent-flag,host-only-flag,secure-only-flag和**http-only-flag**。
- Session:是一种服务器端的机制。用户发送登录请求时,服务器会为本次登录创建一个session并将session_id在本次请求中发送给请求端,存储在cookies中。在一定时间内,该用户再次访问无需登录验证。session存在于服务器端。
- JavaScript cookie: 客户端设置的cookie,通过控制台console,输入document.cookie可查看,多用于记录用户设置等信息。
document.cookie = "fortest" "fortest" document.cookie "Hm_lvt_906c6961a45234ebc29e93442b414707=1522549554; Hm_lpvt_906c6961a45234ebc29e93442b414707=1522549554; fortest" console.log(document.cookie); VM174:1 Hm_lvt_906c6961a45234ebc29e93442b414707=1522549554; Hm_lpvt_906c6961a45234ebc29e93442b414707=1522549554; fortest
- httponlycookie:在cookie中包含的httponly属性为true时,表示这个cookie不允许JS来读写。它是服务器设置的cookie。