前端通用 Token 全流程操作指南
本文梳理 所有前端框架通用 的 Token 操作逻辑,剥离具体项目/技术栈细节,聚焦「获取→存储→使用→过期→清除」的核心生命周期,每个步骤均标注「通用场景 + 通用方案 + 注意事项」,适合所有前端开发场景,可直接作为开发速查表。
前置说明:Token 的核心定位
Token 是后端签发的临时访问凭证,核心作用是:
- 证明'当前用户是谁'(身份认证);
- 证明'当前用户有权限访问'(权限校验)。
一、第一步:登录成功获取 Token
通用场景
用户通过账号密码/验证码/第三方登录等方式,向后端发起登录请求,后端验证通过后,在响应体中返回 Token。
通用方案
- 解析登录接口的响应数据;
- 根据后端接口文档,从响应体中提取 Token 字段(常见字段名:
token、access_token、data.token); - 获取到 Token 后,立即执行「存储」操作。
注意事项
- 必须以后端接口文档为准,不要硬猜字段名;
- 获取到 Token 后,不要只打印在控制台,必须立即存储;
- 若接口同时返回
refresh_token(刷新 Token),需一并存储。
二、第二步:存储 Token(核心是选对存储方式)
通用场景
将获取到的 Token 保存到前端,确保刷新页面后不丢失,且全局页面/组件都能读取。
通用方案(三种常见存储方式对比)
| 存储方式 | 特性 | 适用场景 | 通用代码示例(原生 JS) |
|---|---|---|---|
| localStorage | 永久存储(关闭浏览器/重启电脑不丢失),容量约 5MB,仅客户端可读。 | 绝大多数 Web 应用(需求为'记住登录状态,下次打开不用重登')。 | localStorage.setItem('token', '你的 token 值')const token = localStorage.getItem('token') |
| sessionStorage | 会话存储(关闭标签页/浏览器后立即清空),容量约 5MB,仅客户端可读。 | 安全性要求极高的应用(需求为'关闭浏览器就自动登出',如银行、政务系统)。 | sessionStorage.setItem('token', '你的 token 值')const token = sessionStorage.getItem('token') |
| Cookie | 可设置过期时间,容量约 4KB,支持自动携带在请求头中,服务端可读取。 | 需服务端直接读取 Token 的场景,或有跨域/SSO(单点登录)需求的场景。 | document.cookie = 'token=你的 token 值; expires=过期时间; path=/' |
注意事项
- 推荐优先选 localStorage:是目前最通用、最方便的存储方式;
- 不要同时用多种方式存储(如同时存 localStorage 和 Cookie),易导致数据不一致;

