ldc-arcadia-api/bootstrap/middlewares.php

35 lines
966 B
PHP

<?php
declare(strict_types=1);
use Illuminate\Foundation\Configuration\Middleware;
use Presentation\Api\V1\Http\Middlewares\EnsureApiV1AcceptsJson;
use Presentation\Api\V1\Http\Middlewares\NormalizeQueryStringArrays;
use Presentation\Api\V1\Http\Middlewares\SetApiV1Etag;
use Presentation\Api\V1\Http\Middlewares\TransformApiV1Response;
use Presentation\Api\V1\Http\Middlewares\VerifyHmacSignature;
return function (Middleware $middleware): void {
$middleware->prepend(NormalizeQueryStringArrays::class);
$middleware->alias([
'auth.hmac' => VerifyHmacSignature::class,
]);
$middleware->web(append: [
'throttle:web',
]);
$middleware->api(append: []);
$middleware->group('api.v1', [
EnsureApiV1AcceptsJson::class,
'throttle:api.v1',
SetApiV1Etag::class,
TransformApiV1Response::class,
]);
$middleware->preventRequestsDuringMaintenance(except: [
'errors/*',
]);
};