TIF_E41200772/app/Http/Middleware/JwtMiddleware.php

36 lines
1.1 KiB
PHP

<?php
namespace App\Http\Middleware;
use Closure;
use Exception;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
use Tymon\JWTAuth\Facades\JWTAuth;
use Tymon\JWTAuth\Exceptions;
class JwtMiddleware
{
/**
* Handle an incoming request.
*
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
*/
public function handle(Request $request, Closure $next): Response
{
try {
//code...
$user = JWTAuth::parseToken()->authenticate();
} catch (Exception $th) {
if ($th instanceof \Tymon\JWTAuth\Exceptions\TokenInvalidException) {
return response()->json(['message' => 'Token Invalid'], 401);
} else if ($th instanceof \Tymon\JWTAuth\Exceptions\TokenExpiredException) {
return response()->json(['message' => 'Token Expired'], 401);
}else{
return response()->json(['message' => 'Authorization code not found'], 401);
}
}
return $next($request);
}
}