feat: 使用base64加密localStorage信息

This commit is contained in:
禾几海
2021-03-16 20:59:11 +08:00
parent 2ba3d4ca1b
commit defb5042ef
2 changed files with 10 additions and 7 deletions

View File

@@ -22,6 +22,7 @@
"@angular/router": "^11.0.2", "@angular/router": "^11.0.2",
"@angular/service-worker": "^11.0.2", "@angular/service-worker": "^11.0.2",
"jquery": "^3.5.1", "jquery": "^3.5.1",
"js-base64": "^3.6.0",
"ng-zorro-antd": "^11.2.0", "ng-zorro-antd": "^11.2.0",
"rxjs": "^6.6.3", "rxjs": "^6.6.3",
"tslib": "^2.0.3", "tslib": "^2.0.3",

View File

@@ -1,4 +1,5 @@
import {Injectable} from '@angular/core'; import {Injectable} from '@angular/core';
import {Base64} from 'js-base64';
@Injectable({ @Injectable({
providedIn: 'root' providedIn: 'root'
@@ -12,27 +13,27 @@ export class LocalStorageService {
// 30s // 30s
getToken(): string { getToken(): string {
const item = localStorage.getItem('token'); const item = this.getItem('token');
if (!item) { if (!item) {
return null; return null;
} }
return 'Bearer ' + atob(item); return 'Bearer ' + item;
} }
setToken(token: string) { setToken(token: string) {
const t = new Date().valueOf().toString(); const t = new Date().valueOf().toString();
localStorage.setItem('t', btoa(t)); this.setItem('t', t);
if (token.startsWith('Bearer')) { if (token.startsWith('Bearer')) {
token = token.replace('Bearer', ''); token = token.replace('Bearer', '');
} }
if (token.startsWith('bearer')) { if (token.startsWith('bearer')) {
token = token.replace('bearer', ''); token = token.replace('bearer', '');
} }
localStorage.setItem('token', btoa(token)); this.setItem('token', token);
} }
removeToken() { removeToken() {
localStorage.removeItem('token'); this.removeItem('token');
} }
isLogin() { isLogin() {
@@ -40,11 +41,12 @@ export class LocalStorageService {
} }
setItem(key: string, value: any) { setItem(key: string, value: any) {
localStorage.setItem(key, JSON.stringify(value)); localStorage.setItem(key, Base64.encode(value));
} }
getItem(key: string) { getItem(key: string) {
return localStorage.getItem(key); const item = localStorage.getItem(key);
return item ? Base64.decode(item) : null;
} }
removeItem(key: string) { removeItem(key: string) {