From 9d7654c110903d94a2d12de7cc9d9219478c2f32 Mon Sep 17 00:00:00 2001 From: EasyChen Date: Sun, 30 Jan 2022 21:25:08 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=B8=AD=E9=97=B4=E4=BB=B6?= =?UTF-8?q?=E6=94=AF=E6=8C=81post=20via=20json?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/app/Http/Kernel.php | 1 + api/app/Http/Middleware/JsonRequest.php | 21 +++++++++++++++++++++ api/routes/api.php | 2 +- 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 api/app/Http/Middleware/JsonRequest.php diff --git a/api/app/Http/Kernel.php b/api/app/Http/Kernel.php index f0cf694..0c6186d 100644 --- a/api/app/Http/Kernel.php +++ b/api/app/Http/Kernel.php @@ -65,5 +65,6 @@ class Kernel extends HttpKernel 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class, 'auto.login' => \App\Http\Middleware\TokenLogin::class, 'auth.member' => \App\Http\Middleware\EnsureMember::class, + 'json.request' => \App\Http\Middleware\JsonRequest::class, ]; } diff --git a/api/app/Http/Middleware/JsonRequest.php b/api/app/Http/Middleware/JsonRequest.php new file mode 100644 index 0000000..c3fb650 --- /dev/null +++ b/api/app/Http/Middleware/JsonRequest.php @@ -0,0 +1,21 @@ +method(), ['POST', 'PUT', 'PATCH']) + && $request->isJson() + ) { + $data = $request->json()->all(); + $request->request->replace(is_array($data) ? $data : []); + } + + return $next($request); + } +} diff --git a/api/routes/api.php b/api/routes/api.php index 4c71e4f..b5699bf 100644 --- a/api/routes/api.php +++ b/api/routes/api.php @@ -30,7 +30,7 @@ Route::post('/login/idtoken', 'App\Http\Controllers\PushDeerUserController@login Route::post('/login/wecode', 'App\Http\Controllers\PushDeerUserController@wechatLogin'); // 推送消息 -Route::any('/message/push', 'App\Http\Controllers\PushDeerMessageController@push'); +Route::middleware('json.request')->any('/message/push', 'App\Http\Controllers\PushDeerMessageController@push'); // 自动登入,适用于通过 token 进行操作的接口