Я хотел бы иметь промежуточное ПО Slim для проверки аутентификации по всем запросам, кроме некоторых конкретных (например, страницы входа в систему).
Я подготовил первое AuthenticationMiddleware
связующее ПО для проверки всех страниц:
$app->add(new \App\Middleware\AuthenticationMiddleware($container));
Затем я создаю еще один AnonymousMiddleware
, в который предполагается добавить переменную для установки исключения для проверок подлинности:
$app->group('',function() use ($app){
$app->get('/','LogicController:index');
})->add(new AnonymousMiddleware($container));
Проблема в том, что промежуточное программное обеспечение маршрутов (AnonymousMiddleware) применяется ПОСЛЕ общего промежуточного программного обеспечения (AuthenticationMiddleware);
Я пытался использовать determineRouteBeforeAppMiddleware
, но это не меняет результат.
Я знаю, что установил бы промежуточное ПО для маршрутов для всех аутентифицированных маршрутов, но звучит немного опасно, если я забуду об этом, поэтому я бы предпочел установить, какой маршрутизатор не проходит аутентификацию, и затем проверить все остальные маршруты.