aspirecloud/app/Http/Middleware/AuthOptional.php
Chuck Adams 94541156a7 Make API token optional for user api routes (#159)
* feat: make api token optional for user api routes

* config: disable deprecations in production php.ini files

dev should probably override this setting, but keeping it as-is for now
2025-02-06 13:10:32 -07:00

22 lines
578 B
PHP

<?php
declare(strict_types=1);
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpKernel\Exception\UnauthorizedHttpException;
class AuthOptional
{
public function handle(Request $request, Closure $next, string $gate): Response
{
if ($request->bearerToken()) {
$user = auth($gate)->user() or throw new UnauthorizedHttpException('Invalid authentication token');
auth($gate)->setUser($user);
}
return $next($request);
}
}