是常见的本地存储以及存在的意义
local storage,session storage以及cookie。
首先来说cookie
为什么要用到cookie?
分析用户行为,http连接是无感的,那怎么鉴别请求来自何处?设置cookie,在服务端设置cookie,方法:set-cookie。配合这sessionId结合食用!
说到了set-cookie,再来看看都设置一些什么。首先是token,然后是过期时间Expires或者是max-age(后者可覆盖前者),以及还有一些其他的字段domain,path。如果有不一样的话,那边会被替换。结合缓存机制??
那么从前端的角度又是怎么加上这个cookie呢(避坑:不能直接加在header上),同源时:直接发送cookie,跨域时加入withCredentials:true
便可。
再来,安全上,xss攻击就是利用了可以通过document.cookie
可以读取的特点进行攻击。相应的防范则是Secure(Https中使用)字段与HttpOnly(cookie将不可读)。
token结合refresh-token结合一起食用体验更佳!
其他鉴权字段
Authentication认证
cookie跟token是有区别的
token进阶jwt
sso
OAuth2
参考资料:
前端鉴权的兄弟们:cookie、session、token、jwt、单点登录 - 掘金 (juejin.cn)
Cookie – JavaScript 标准参考教程(alpha) (ruanyifeng.com)