Token是什么?
Token在计算机身份认证中是令牌(临时)的意思,在词法分析中是标记的意思。一般作为邀请、登录系统使用。
Token的作用:就是身份认证,简单来说 就是让服务器知道你是谁.
Token的三个工作流程
1.向浏览器发送请求
2.服务器响应token,需要把token使用localStorage存入硬盘中
3.其他的接口就在请求头中发送token
使用拦截器添加token:
axios.interceptors.request.use(function (config) {
// 在发送请求之前做些什么
// config配置对象(请求报文 ) : 请求地址 请求方法 请求头 请求体
// 判断有没有token,如果有就在请求头添加
if (localStorage.getItem('token')) {
config.headers.Authorization = localStorage.getItem('token')
}
return config;
}, function (error) {
// 对请求错误做些什么
return Promise.reject(error);
});
// 添加响应拦截器
axios.interceptors.response.use(function (response) {
// 对响应数据做点什么
// response响应对象(响应保温) : 响应状态码 响应头 响应体 请求配置
return response;
}, function (error) {
// 对响应错误做点什么
// (1) 统一处理错误信息
Toast.fail(error.response.data.message)
// (2) 如果是401, 没有token token过期了 就跳转登录页
if (error.response.status === 401) {
location.href = './login.html'
}
return Promise.reject(error);
});