Какова наилучшая практика для обработки исключений в одном приложении Grails (2.4.5), где есть запросы REST и обычные запросы браузера?Лучшая практика для обработки исключений как для запросов REST, так и для браузера?
Я использую один и тот же ExceptionController между вызовами API RESTful и регулярными веб-запросами.
UrlMapping.groovy "500"(controller: "exception", action: "handle")
Для обычных веб-запросов, это звонит render(view: 'show', model: model)
Позже RESTful API был введен. Поскольку исключения будут по-прежнему путь к ExceptionController, я изменил respond(view: 'show', model: model)
Это не похоже на работу, так что я обновлен до
withFormat{
html {render(view: 'show', model: model)}
json {render model as JSON}
}
Это похоже на работу, но я не уверен, что это самое лучшее решение.
Обращение с форматом ответов в вашем контроллере ошибок кажется мне удобным. Почему вы думаете, что это не хорошо? –