2 changed files with 41 additions and 0 deletions
@ -0,0 +1,36 @@
|
||||
<?php |
||||
|
||||
namespace App\Http\Middleware; |
||||
|
||||
use Closure; |
||||
use Firebase\JWT\JWT; |
||||
use Firebase\JWT\Key; |
||||
use Illuminate\Http\Request; |
||||
|
||||
class JwtMiddleware |
||||
{ |
||||
/** |
||||
* Manejar una solicitud entrante. |
||||
* |
||||
* @param \Illuminate\Http\Request $request |
||||
* @param \Closure $next |
||||
* @return mixed |
||||
*/ |
||||
public function handle(Request $request, Closure $next) |
||||
{ |
||||
$token = $request->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); |
||||
} |
||||
} |
||||
} |
||||
Loading…
Reference in new issue