В моем проекте Symfony 2 у меня есть пакет, который обрабатывает запросы API на мой сайт. Если из этого комплекта генерируется ошибка, я хочу вернуть ответ в формате JSON.
Вот как я сейчас это делаю:
public function onKernelException(GetResponseForExceptionEvent $event)
{
$controller = $event->getRequest()->get('_controller');
if (substr($controller, 0, 25) === 'MyProject\Bundle\MyBundle')) {
$event->setResponse(new JsonResponse(
['error' => 'An unknown error has occurred.'],
500
));
}
}
Такое чувство, что я могу подойти к этому неправильно. Есть ли лучший способ для обнаружения пакета, откуда возникла ошибка?
Задача ещё не решена.
Других решений пока нет …