Если ваше приложение Slim Framework не имеет маршрута, соответствующего текущему URI-запросу HTTP, приложение вызывает
обработчик Not Found и возвращает HTTP/1.1 404 Not Found
ответ HTTP-клиенту.
Each Slim Framework application has a default Not Found handler. This handler sets the Response status to 404
, it sets the content type to text/html
, and it writes a simple explanation to the Response body.
Обработчик Not Found для Slim Framework - это услуга Pimple. Вы можете заменить свой собственный обработчик Not Found, указав собственный заводский метод Pimple с контейнером приложения.
$c = new \Slim\Container(); //Create Your container
//Override the default Not Found Handler
$c['notFoundHandler'] = function ($c) {
return function ($request, $response) use ($c) {
return $c['response']
->withStatus(404)
->withHeader('Content-Type', 'text/html')
->write('Page not found');
};
};
//Create Slim
$app = new \Slim\App($c);
//... Your code
В этом примере мы определяем новый notFoundHandler
фабрику, который возвращает вызываемый. Возвращаемый вызов
допускает два аргумента:
\Psr\Http\Message\ServerRequestInterface
экземпляр\Psr\Http\Message\ResponseInterface
экземплярВызываемый ДОЛЖЕН вернуть соответствующий \Psr\Http\Message\ResponseInterface
экземпляр.