Как правильно обработать ошибку 418 в Symfony 4? - PullRequest
0 голосов
/ 17 сентября 2018

Учитывая Symfony 4 документация нет исключения для выброса при возникновении ошибки 418 (я чайник)

Я тогда написал новое исключение, реализующее Symfony\Component\HttpKernel\Exception\HttpExceptionInterface

namespace App\Exception;

use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface;

class HttpTeapotException extends \Exception implements HttpExceptionInterface
{
    public function getStatusCode()
    {
        return (418);
    }

    public function getHeaders()
    {
        $header = array();

        return ($header);
    }
}

А затем, контроллер для /teapot маршрута

namespace App\TeaPot\Controller;

use App\Exception\HttpTeapotException;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;

class TeaPotController extends Controller
{
    public function tea(Request $request)
    {
        throw new HttpTeapotException();
    }
}

При переходе на /teapot я, очевидно, получил это как вывод:

Oops! Произошла ошибка

Сервер вернул «418 Я чайник».

Что-то сломано. Пожалуйста, дайте нам знать, что вы делали, когда произошла эта ошибка. Мы исправим это как можно скорее. Приносим извинения за доставленные неудобства.

У меня такой вопрос: есть ли способ правильно обработать и выдать 418, когда сервер является чайником, особенно при построении заголовков, которые соответствуют WC3 (Web-Controlled Coffee Consortium)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...