From 3f98cf0b5b11be1ce7befaf5f85dfc010a5537bf Mon Sep 17 00:00:00 2001 From: augushong Date: Fri, 21 Mar 2025 10:54:13 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F=E4=B8=8D=E8=83=BD=E9=80=80=E5=87=BA=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- extend/base/admin/controller/LoginBase.php | 4 ++++ .../base/common/controller/AdminControllerBase.php | 14 +++++++++++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/extend/base/admin/controller/LoginBase.php b/extend/base/admin/controller/LoginBase.php index 09daee1..88ff7da 100644 --- a/extend/base/admin/controller/LoginBase.php +++ b/extend/base/admin/controller/LoginBase.php @@ -100,6 +100,10 @@ class LoginBase extends AdminController public function out() { session('admin', null); + $token = $this->readHeaderToken(); + if ($token) { + Cache::delete($token); + } $this->success('退出登录成功'); } diff --git a/extend/base/common/controller/AdminControllerBase.php b/extend/base/common/controller/AdminControllerBase.php index c6d09c4..787ff40 100644 --- a/extend/base/common/controller/AdminControllerBase.php +++ b/extend/base/common/controller/AdminControllerBase.php @@ -463,9 +463,8 @@ class AdminControllerBase extends BaseController { $adminConfig = config('admin'); - $header_authorization = $this->request->header('Authorization'); - if (!empty($header_authorization)) { - $token = explode(' ', $header_authorization)[1]; + $token = $this->readHeaderToken(); + if (!empty($token)) { $admin = Cache::get($token); } else { $admin = session('admin'); @@ -528,6 +527,15 @@ class AdminControllerBase extends BaseController $this->assign('session_admin', $model_admin, -1); } + protected function readHeaderToken(){ + $header_authorization = $this->request->header('Authorization'); + if (!empty($header_authorization)) { + $token = explode(' ', $header_authorization)[1]; + return $token; + } + return null; + } + /** * 严格校验接口是否为POST请求 */