项目篇
七天内自动登录实现
- 使用 \(cookie\) 根据是否勾选,来设置 \(cookie\) 过期时间,在每次用户访问页面的时候读取 \(token\) 并且验证他的有效性.
设置 $cookie$
import Cookies from 'js-cookie';
// 设置 Cookie
function setToken(token, isKeepLogin) {
if (isKeepLogin) {
Cookies.set('token', token, { expires: 7 }); // 设置7天有效期
} else {
Cookies.set('token', token); // 会话级别的 Cookie
}
}
读取和验证 $cookie$
function getToken() {
return Cookies.get('token');
}
// 示例:在请求中携带 Token
import axios from 'axios';
axios.interceptors.request.use(config => {
const token = getToken();
if (token) {
config.headers.Authorization = `Bearer ${token}`;
}
return config;
});
- 使用 \(JWT token\) 实现
在服务器端生成一个有效期为七天的 \(JWT token\),并且返回给客户端,然后将生成的 \(token\) 存储在 $LocalStorage $或者 \(Cookie\)中,之后在服务器解析并且验证\(token\) 的时效性。
所念皆有果,梦中有星海,热爱可抵岁月漫长

浙公网安备 33010602011771号