From baf992ccbcbc0af6bc7af8748234c10acc74e538 Mon Sep 17 00:00:00 2001 From: "iVampireSP.com" Date: Sat, 11 Feb 2023 16:41:57 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E8=BF=9B=20=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E4=B8=8D=E5=9C=A8=E7=BA=BF=E6=97=B6=E4=B8=8D=E8=83=BD=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Kernel.php | 2 ++ .../Middleware/MakeSureModuleStatusIsUp.php | 31 +++++++++++++++++++ app/Providers/RouteServiceProvider.php | 2 +- 3 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 app/Http/Middleware/MakeSureModuleStatusIsUp.php diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index c44452b..4772945 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -7,6 +7,7 @@ use App\Http\Middleware\Authenticate; use App\Http\Middleware\EncryptCookies; use App\Http\Middleware\JsonRequest; +use App\Http\Middleware\MakeSureModuleStatusIsUp; use App\Http\Middleware\PreventRequestsDuringMaintenance; use App\Http\Middleware\RealNamed; use App\Http\Middleware\RedirectIfAuthenticated; @@ -80,6 +81,7 @@ class Kernel extends HttpKernel 'module' => [ JsonRequest::class, SubstituteBindings::class, + MakeSureModuleStatusIsUp::class ], ]; diff --git a/app/Http/Middleware/MakeSureModuleStatusIsUp.php b/app/Http/Middleware/MakeSureModuleStatusIsUp.php new file mode 100644 index 0000000..a636635 --- /dev/null +++ b/app/Http/Middleware/MakeSureModuleStatusIsUp.php @@ -0,0 +1,31 @@ +user('module')->status !== 'up') { + return response()->json([ + 'message' => '无法连接到模块。', + ], 503); + } + + return $next($request); + } +} diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index 5fb94b4..a07d64a 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -34,7 +34,7 @@ public function boot(): void ->as('api.') ->group(base_path('routes/api.php')); - Route::middleware(['module', 'auth:module']) + Route::middleware(['auth:module', 'module']) ->prefix('modules') ->as('modules.') ->group(base_path('routes/modules.php'));