| namespace App\Http\Middleware; | |
| use Closure; | |
| use Illuminate\Http\JsonResponse; | |
| use Illuminate\Http\Request; | |
| use Symfony\Component\HttpFoundation\Response; | |
| class AuthorizeHfMediaToken | |
| { | |
| public function handle(Request $request, Closure $next): Response | |
| { | |
| $configuredToken = trim((string) config('services.huggingface.api_token', '')); | |
| $providedToken = trim((string) $request->bearerToken()); | |
| if ($configuredToken === '' || $providedToken === '' || ! hash_equals($configuredToken, $providedToken)) { | |
| return new JsonResponse([ | |
| 'message' => 'Unauthorized.', | |
| ], 401); | |
| } | |
| return $next($request); | |
| } | |
| } | |