各自应用场景
考虑session、token、cookie是不是有各自的应用场景,比如
传统项目适合用session和cookie
单页应用适合用token
分布式适合用token
等等
token
如果非要选择token(非cookie存储)的话
前端每次请求都必须携带该token
该项目是传统项目,以后端为主导的,数据由服务端渲染,非单页webapp。
那么我怎么每次请求都携带token?
ajax还好说,我可以同意在ajax请求头部塞入token
那么a链接呢怎么办,我们只能用拼接的方式了 href='xxx?token'+token
cookie
这样会导致url很长,一点也不美观,如果非特殊情况,建议将token放入cookie中,这样,无论是什么请求,都将会自动协带cookie,后端也直接能拿到
至于session
大家现在都在说session不好,说session当用户多了的时候,服务器要创建管理很多session,会增加服务器压力
而最好是吧这个校验放在前端,让前端管理,每次发过来就好了,后端拿到后去比较那个服务器创建的那个token
所以session现在已经是不建议了,用户量不是那么多的时候可以考虑