Für jede Route in meinem dünnen 3 API habe ich etwas wie folgt aus:Schlanke Rahmen gemeinsamen Exception-Handler
$app->get('/login', function(Request $request, Response $response)
{
try
{
# SOME MAGIC HERE
# ...
}
catch(\My\ExpectedParamException $e)
{
$response->withStatus(400); # bad request
}
catch(\My\ExpectedResultException $e)
{
$response->withStatus(401); # unauthorized
}
catch(Exception $e)
{
$this->logger->write($e->getMessage());
throw $e;
}
});
ich nur einmal dieses Muster schreiben würde, Code-Redundanz so weit wie möglich zu vermeiden. Grundsätzlich sollte meine Routen-Definition auf #SOME MAGIC HIER beschränkt sein. Bietet Slim eine Möglichkeit, Fehler in nur einem Teil des Codes zu erkennen?
Ich habe diesen Teil der Dokumentation komplett vergessen;) –