From aa658d39a37ad443d3f782ceac02e78741047239 Mon Sep 17 00:00:00 2001 From: Chris Mancuso Date: Fri, 6 Mar 2026 11:18:15 -0600 Subject: [PATCH] updated jwt --- .../Controllers/Auth/EveLoginController.php | 2 +- app/Http/Middleware/ValidateJwt.php | 35 +++++++++++++++++++ app/Models/Auth/User.php | 2 +- .../0001_01_01_000000_create_users_table.php | 2 +- resources/views/dashboard/dashboard.blade.php | 3 ++ 5 files changed, 41 insertions(+), 3 deletions(-) create mode 100644 app/Http/Middleware/ValidateJwt.php diff --git a/app/Http/Controllers/Auth/EveLoginController.php b/app/Http/Controllers/Auth/EveLoginController.php index 3c6aabf..4ad7af3 100644 --- a/app/Http/Controllers/Auth/EveLoginController.php +++ b/app/Http/Controllers/Auth/EveLoginController.php @@ -58,7 +58,7 @@ class EveLoginController extends Controller 'refresh_token' => $refreshToken, 'expiresIn' => $expiresIn, // "user" holds jwt - you can set it later when you add JWT issuance. - 'user' => null, + 'user_jwt' => null, ] ); diff --git a/app/Http/Middleware/ValidateJwt.php b/app/Http/Middleware/ValidateJwt.php new file mode 100644 index 0000000..6fdeefc --- /dev/null +++ b/app/Http/Middleware/ValidateJwt.php @@ -0,0 +1,35 @@ +header('Authorization'); + + if (! $header || ! str_starts_with($header, 'Bearer ')) { + return response()->json(['message' => 'Missing bearer token.'], 401); + } + + $token = substr($header, 7); + + try { + $decoded = $jwtService->decode($token); + $request->attributes->set('jwt', $decoded); + + return $next($request); + } catch (ExpiredException $e) { + return response()->json(['message' => 'Token expired.'], 401); + } catch (Throwable $e) { + return response()->json(['message' => 'Invalid token.'], 401); + } + } +} \ No newline at end of file diff --git a/app/Models/Auth/User.php b/app/Models/Auth/User.php index d5eaf79..539cc19 100644 --- a/app/Models/Auth/User.php +++ b/app/Models/Auth/User.php @@ -16,7 +16,7 @@ class User extends Authenticatable 'token', 'refresh_token', 'expiresIn', - 'user', // holds jwt (per spec) + 'user_jwt', // holds jwt (per spec) ]; protected $hidden = [ diff --git a/database/migrations/0001_01_01_000000_create_users_table.php b/database/migrations/0001_01_01_000000_create_users_table.php index e5036f8..f6b8fa8 100644 --- a/database/migrations/0001_01_01_000000_create_users_table.php +++ b/database/migrations/0001_01_01_000000_create_users_table.php @@ -26,7 +26,7 @@ return new class extends Migration // As requested: "user" holds jwt. (Note: naming a column "user" can be confusing later; // consider "jwt" in future refactors, but this honors your spec.) - $table->text('user')->nullable(); + $table->text('user_jwt')->nullable(); $table->rememberToken(); $table->timestamps(); diff --git a/resources/views/dashboard/dashboard.blade.php b/resources/views/dashboard/dashboard.blade.php index d689743..704de19 100644 --- a/resources/views/dashboard/dashboard.blade.php +++ b/resources/views/dashboard/dashboard.blade.php @@ -17,6 +17,9 @@

Logged in as: {{ auth()->user()->character_name }} ({{ auth()->user()->character_id }})

+ +

JWT

+ \ No newline at end of file