cookies:
保存在浏览器端,同源的存储方式
在所有的同源窗口中都是共享的
cookie可以设置保存的有效期
cookie只能存储小的数据,小于4k
cookie的使用方法:
-
获取cookie
document.cookie
-
保存cookie
document.cookie="key=value"
保存数据存储时间
document.cookie=("key=value";expires=时间)
-
删除cookie
document.cookies=("key=value";expires=当前时间)
当前时间可以通过new Data()获取
导入cookie后的方法 npm install --save js-cookie
//创建一个名为name,对应值为value的cookie
set:cookie.set(name,value)
//创建一个名为name,对应值为value的cookie,属性expires设置储存有效时间
cookie.set(name,value,{expires:num})
//创建一个名为name,对应值为value的cookie,路径为...
cookie.set(name,value,{path:'路径'})
//身份验证,token,保存时间num
cookie.set('Token',token,{expires:num}})
//获取指定名称的value
get:
Cookie.get(name)
//获取所有的cookie
Cookies.get()
//获取value为对象的cookie
const obj = { name: 'ryan' }
Cookies.set('user', obj) JSON.parse(Cookies.get('user'))
//remove删除指定名称的cookie
Cookies.remove(name) // value
// 删除带有路径的cookie
Cookies.set(name, value, { path: '' }) Cookies.remove(name, { path: '' })
localStorage与sessionStorage
使用方法相同,但存在区别
区别:
localStorage持久化存储,浏览器关闭,存储依旧存在
sessionStorage:临时存储,浏览器关闭,存储删除
存储大小为5km或以上,
两者的使用方法:
setItem(keyname,value) 设置存储
getItem(keyname) 获取存储
removeItem(keyname) 删除键
clear() 清除存储
key(n) 返回存储的对象中的第n个键的名称
注:JavaScript存储的数据是字符型,所有需要JSON.stringlify()
需要将字符型数据转换成JavaScript数据才能使用其在相应位置,JSON.parse
token认证
Token:身份验证
理解:用户t通过用户名和密码登录成功后。服务器将登录凭证作为数字签名,加密之后得到的字符就是token