From e209d27f651aed41bfa88eeabd4a4457c315eefa Mon Sep 17 00:00:00 2001 From: weizong song Date: Sat, 10 Apr 2021 11:33:35 +0800 Subject: [PATCH] up --- .../Controllers/Manager/AuthController.php | 35 +++++++++++++++---- routes/web.php | 2 +- 2 files changed, 30 insertions(+), 7 deletions(-) diff --git a/app/Http/Controllers/Manager/AuthController.php b/app/Http/Controllers/Manager/AuthController.php index a766639..f95a383 100644 --- a/app/Http/Controllers/Manager/AuthController.php +++ b/app/Http/Controllers/Manager/AuthController.php @@ -10,6 +10,7 @@ use Illuminate\Support\Facades\Auth; use App\Http\Controllers\Controller; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Notification; +use PHPUnit\Exception; use Tymon\JWTAuth\Facades\JWTAuth; class AuthController extends Controller @@ -240,9 +241,9 @@ class AuthController extends Controller /** - * @OA\Post( - * path="/manager/refresh", - * summary="V2-刷新token", + * @OA\Get( + * path="/manager/check-token", + * summary="V2-判断token是否有效", * @OA\Parameter(name="token", in="query", @OA\Schema(type="string"), required=true, description="token"), * description="", * @OA\Response( @@ -252,6 +253,20 @@ class AuthController extends Controller * ) */ + public function checkToken() + { + $id = $this->guard()->id(); + if ($id) { + return response()->json([ + 'token_available' => true + ]); + } + return response()->json([ + 'errorcode' => '401', + 'errormsg' => "Token已失效" + ]); + } + /** * Refresh a token. * @@ -260,9 +275,17 @@ class AuthController extends Controller public function refresh() { - $token = JWTAuth::getToken(); - dd($token); - return $this->respondWithToken($this->guard()->refresh()); + //todo + if (request()->token) { + try { + $new_token = $this->guard()->refresh(); + return $this->respondWithToken($new_token); + } catch (Exception $e) { + abort("401"); + } + } else { + abort("401"); + } } /** diff --git a/routes/web.php b/routes/web.php index 2ad8b3c..bf36760 100644 --- a/routes/web.php +++ b/routes/web.php @@ -121,7 +121,7 @@ Route::group(["namespace" => "Customer", "prefix" => "customer"], function () { Route::group(["namespace" => "Manager", "prefix" => "manager"], function () { Route::post('login', 'AuthController@login'); Route::post('logout', 'AuthController@logout'); - Route::post('refresh', 'AuthController@refresh'); + Route::get('check-token', 'AuthController@checkToken'); Route::post('login-by-code', 'AuthController@loginByCode'); Route::post('login-by-username', 'AuthController@loginByUsername'); Route::get('get-videos', 'TrainingController@index');