Cookie

http(网络传输协议)https(安全)

特点:

无状态 (不知道访问者是谁)

无连接 (连接完成后会断开)

长连接/短连接 (key-alive属性来指定的)

既然我们的http协议是无状态的 那么我们怎么区分对应的访问者(孕育而出了一个sessionID 来做区

分)

他访问了我 我给你一个对应的sessionID 他访问了我我同样给他一个sessionID (这个时候我们就可以

通过这个sessionID来做区分)

这个sessionID是怎么给到你的呢?

他是通过在访问的时候 给你分发一个sessionID 保存到你的机器上 (存在于你的浏览器上 cookie)

sessionID是依赖于cookie进行存储的

cookie会随请求一起过去

这个时候我们的http的无状态就解决了

cookie

刚才在上面我们已经知道了对应的cookie是存储对应的sessionID 那么是不是就证明了我们的cookie是

一个容器的(这个容器的大小只有4k) 是一个容器我们就有对应的增删改查的方法

cookie里面是什么样

对应的属性有

键=值 (名字=值)

expires 过期时间(关闭浏览器失效)*

path 访问路径(指定对应的路径携带cookie)

domain 跨域 (可以跨域的域名)

secure 安全

URI编码和解码

encodeURIComponent 编码

decodeURIComponent 解码

增删改查

添加 直接赋值

//name是对应的cookie的名字 key=value expires 过期日期 path 访问路径(才携带cookie)

domain 跨域操作 secure 安全获取 采用读取字符串的形式

删除 设置过期时间

修改 重新设置就是修改

cookie的特性

1.为了解决http无状态的问题

2.存储只有4k左右

3.他是存储在浏览器上

4.他会随请求携带

5.他可以被伪造和修改(不安全)

cookie和localStorage的区别

localStorage容量大于cookie

localStorage存储的位置和cookie不是一个地方

localStorage对应的不会随请求携带(本地缓存)

cookie 在后续的框架中也会使用 但是他使用的是对应的库(cookie.js)

https://www.mianshigee.com/project/cookie-js/

localStorage的方法

getItem(key) 获取元素

setItem(key,value) 设置元素

removeItem(key) 移除元素

JSON

JSON是一种数据格式(json字符串) 他通用我们对应的网络传输(xml)他是一种数据格式 而在对应

的JavaScript他是一种数据类型

json俩种显示方式

对象 {} .key

数组 [] 使用下标

document.cookie = "key=value;"

console.log(document.cookie.split(";")[0].split("=")[1]) //拿到value值

document.cookie = "key=value;expires="+new Date()

document.cookie = "key=hello;"反序列化操作 (将字符串变成对象)

JSON.parse() *

eval()

序列化操作 (将对象变成json格式的字符串)

JSON.stringify() *

localstorage和cookie存储的格式(字符串)以后再存储数据的时候直接存储json格式字符串 取出的

时候利用反序列化转为对象

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容