作为一名两年经验的码农分享一下自己的见解,不足之处还望诸位指教。
设计token的初衷是为了系统安全,区分用户身份。
正常情况我们会选择把token存储到Cookie,localStorage,sessionStorage,至于选择哪个存储方案,根据业务需求来决定的,当然还需要我们对Cookie,localStorage,sessionStorage的理解掌握,如:
1.要求用户登陆一次有效期只有8小时,此时选择Cookie是合理的,Cookie可以设置过期时间,时间到自动清除token,用户需重新登录。
2.要求用户登录一次之后就不需要登录了,此时选择localStorage是合理的,localStorage可进行持久化存储,只要用户不主动去删除token,便一直存在。
3.要求用户登录一次,关闭浏览器标签需要重新登录,此时选择sessionStorage是合理的,sessionStorage在关闭窗口或标签页之后将会删除token。
以上涉及到的前端token部分,实际开发中,需求往往更复杂,需要我们具体情况具体分析,才能选择出合理的方案。