handle($request); } catch (\Throwable $exception) { $response = [ 'error' => [ 'type' => \get_class($exception), 'code' => $exception->getCode(), 'message' => $exception->getMessage(), 'file' => $exception->getFile(), 'line' => $exception->getLine(), 'trace' => explode("\n", $exception->getTraceAsString()), ] ]; /** @var string $json */ $json = json_encode($response); return new Response($exception->getCode() ?: 500, ['Content-Type' => 'application/json'], $json); } } }