From 6740dc9f0cff694cbc37b106e23ff199f0a14d1f Mon Sep 17 00:00:00 2001 From: jirho Date: Tue, 24 Sep 2024 13:18:35 -0300 Subject: [PATCH] =?UTF-8?q?Middleware=20para=20la=20autenticaci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Kernel.php | 5 ++++ app/Http/Middleware/JwtMiddleware.php | 36 +++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 app/Http/Middleware/JwtMiddleware.php diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index c34cdcf..5af51bc 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -23,6 +23,11 @@ class Kernel extends HttpKernel \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class, ]; + protected $routeMiddleware = [ + 'jwt.auth' => \App\Http\Middleware\JwtMiddleware::class, + ]; + + /** * The application's route middleware groups. * diff --git a/app/Http/Middleware/JwtMiddleware.php b/app/Http/Middleware/JwtMiddleware.php new file mode 100644 index 0000000..12c6025 --- /dev/null +++ b/app/Http/Middleware/JwtMiddleware.php @@ -0,0 +1,36 @@ +bearerToken(); + + if (!$token) { + return response()->json(['message' => 'Token no proporcionado'], 401); + } + + try { + + JWT::decode($token, new Key(config('app.jwt_secret'), 'HS256')); + return $next($request); + + } catch (\Exception $e) { + return response()->json(['message' => 'Token inválido'], 401); + } + } +}