Тонкая структура промежуточного программного обеспечения JWT

У меня проблема с моим тонким приложением, я пытаюсь использовать JsonWebToken для аутентификации, но я не знаю, как это сделать правильно.

Мое промежуточное программное обеспечение блокирует все запросы, которые не включают действительный токен, но как насчет первого запроса на отправку почты, который, очевидно, не содержит действительного токена. Вот мой код, если он помогает (в файле промежуточного слоя):

$app->add(function (Request $request,Response $response, $next) use ($app){ $stringToken = $request->getHeader("Authorization")[0]; if($stringToken == NULL) { return $response->withJson(array("Connection"=>"Fail On Token", "Error"=>"No token Provided.")); } else { $jsonObjectToken = json_decode($stringToken); try{ JWT::decode($jsonObjectToken->jwt, JWTController::$secretKey, array('HS512')); }catch (Exception $e){ return $response->withJson(array("Connection"=>"Fail On Token", "Error"=>$e->getMessage())); } $response = $next($request, $response); return $response; } });