Laravel 5.2 + Упс

У меня ранее были Whoops в 5.1 и 5.0; но начиная с версии 5.2 реализация, которую я использовал ранее, больше не работает.

Мне не удалось найти способ реализовать Whoops 2.0 в Laravel 5.2 как есть.

Какие-либо предложения?

2 ответа

Просто добавьте этот метод к вашему app/Exceptions/Handler.php файл, он переопределяет существующий метод, который будет генерировать ответ об ошибке Symfony. Если приложение находится в режиме конфигурации, оно вернет ответ Whoops. Если вы создаете какой-то API, вы можете вместо этого использовать JsonResponseHandler над PrettyPageHandler что даст вам хороший ответ JSON для исключений.

/**
 * Create a Symfony response for the given exception.
 *
 * @param  \Exception  $e
 * @return mixed
 */
protected function convertExceptionToResponse(Exception $e)
{
    if (config('app.debug')) {
        $whoops = new \Whoops\Run;
        $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler);

        return response()->make(
            $whoops->handleException($e),
            method_exists($e, 'getStatusCode') ? $e->getStatusCode() : 500,
            method_exists($e, 'getHeaders') ? $e->getHeaders() : []
        );
    }

    return parent::convertExceptionToResponse($e);
}

Whoops 2.1 был развернут 4 дня назад. Я только что попробовал с Laravel 5.2, и он работал просто отлично.

Я только следовал за обучением Мэтта Штауффера.

https://mattstauffer.co/blog/bringing-whoops-back-to-laravel-5

Другие вопросы по тегам