Files
cesizen-individuel/backend/app/Http/Middleware/JwtMiddleware.php
T
Azmog e3da625927 feat: initialisation complète du projet CESIZen
- Backend Laravel 11 (API REST, JWT auth, PostgreSQL)
- Frontend Next.js 14 (React, TypeScript, Tailwind CSS)
- Docker Compose (PostgreSQL, backend, frontend)
- Modules : auth, profil, tracker émotions, informations, admin
2026-03-11 16:27:01 +01:00

29 lines
816 B
PHP

<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Tymon\JWTAuth\Facades\JWTAuth;
use Tymon\JWTAuth\Exceptions\TokenExpiredException;
use Tymon\JWTAuth\Exceptions\TokenInvalidException;
use Tymon\JWTAuth\Exceptions\JWTException;
class JwtMiddleware
{
public function handle(Request $request, Closure $next)
{
try {
JWTAuth::parseToken()->authenticate();
} catch (TokenExpiredException $e) {
return response()->json(['message' => 'Token expiré'], 401);
} catch (TokenInvalidException $e) {
return response()->json(['message' => 'Token invalide'], 401);
} catch (JWTException $e) {
return response()->json(['message' => 'Token absent'], 401);
}
return $next($request);
}
}