將保存在cookie中的密碼自動填入表單:庫js-cookie
// login.vue
getCookie() {const username = Cookies.get("username");const password = Cookies.get("password");const rememberMe = Cookies.get('rememberMe')this.loginForm = {username: username === undefined ? this.loginForm.username : username,password: password === undefined ? this.loginForm.password : decrypt(password),rememberMe: rememberMe === undefined ? false : Boolean(rememberMe)};},
記住密碼,這里期限是30天:
Cookies.set("username", this.loginForm.username, { expires: 30 });
Cookies.set("password", encrypt(this.loginForm.password), { expires: 30 });
Cookies.set('rememberMe', this.loginForm.rememberMe, { expires: 30 });
這里有加密和解密的操作。在線生成RSA的公鑰和私鑰,使用JSEncrypt
庫進行加密和解密:
// 加密
export function encrypt(txt) {const encryptor = new JSEncrypt()encryptor.setPublicKey(publicKey) // 設置公鑰return encryptor.encrypt(txt) // 對數據進行加密
}// 解密
export function decrypt(txt) {const encryptor = new JSEncrypt()encryptor.setPrivateKey(privateKey) // 設置私鑰return encryptor.decrypt(txt) // 對數據進行解密
}