From defb5042efc4926941119fd9bb4aedb71aa9c5d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A6=BE=E5=87=A0=E6=B5=B7?= Date: Tue, 16 Mar 2021 20:59:11 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BD=BF=E7=94=A8base64=E5=8A=A0?= =?UTF-8?q?=E5=AF=86localStorage=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 1 + src/app/services/local-storage.service.ts | 16 +++++++++------- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 7cb1f74..c6f491e 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "@angular/router": "^11.0.2", "@angular/service-worker": "^11.0.2", "jquery": "^3.5.1", + "js-base64": "^3.6.0", "ng-zorro-antd": "^11.2.0", "rxjs": "^6.6.3", "tslib": "^2.0.3", diff --git a/src/app/services/local-storage.service.ts b/src/app/services/local-storage.service.ts index f36191d..4956b3b 100644 --- a/src/app/services/local-storage.service.ts +++ b/src/app/services/local-storage.service.ts @@ -1,4 +1,5 @@ import {Injectable} from '@angular/core'; +import {Base64} from 'js-base64'; @Injectable({ providedIn: 'root' @@ -12,27 +13,27 @@ export class LocalStorageService { // 30s getToken(): string { - const item = localStorage.getItem('token'); + const item = this.getItem('token'); if (!item) { return null; } - return 'Bearer ' + atob(item); + return 'Bearer ' + item; } setToken(token: string) { const t = new Date().valueOf().toString(); - localStorage.setItem('t', btoa(t)); + this.setItem('t', t); if (token.startsWith('Bearer')) { token = token.replace('Bearer', ''); } if (token.startsWith('bearer')) { token = token.replace('bearer', ''); } - localStorage.setItem('token', btoa(token)); + this.setItem('token', token); } removeToken() { - localStorage.removeItem('token'); + this.removeItem('token'); } isLogin() { @@ -40,11 +41,12 @@ export class LocalStorageService { } setItem(key: string, value: any) { - localStorage.setItem(key, JSON.stringify(value)); + localStorage.setItem(key, Base64.encode(value)); } getItem(key: string) { - return localStorage.getItem(key); + const item = localStorage.getItem(key); + return item ? Base64.decode(item) : null; } removeItem(key: string) {