Здравствуйте.
Вопрос следующий. Есть ссылки для обращения к ресурсам. Ресурсы имеют некую иерархию, например, ссылка будет иметь следующий вид:
/cart/{cartId}/product/{productId}
И соответственно, у нас есть методы GET, POST, PUT, PATCH, DELETE. При каждом запросе к Action-ам, нам необходимо проверять есть ли корзина с таким ID, есть ли продукт с таким ID, имею ли я право работать с продуктом и т.д., а при несоответствии условию кидается HTTPException.
Вот и назрел вопрос, чтобы не дублировать код по Action-методам контроллеров, каким образом лучше сделать такую предпроверку типичных условий ?
Были мысли вынести все в обычный менеджер, но
не думаю, что бросание HTTPException-ов менеджером хорошая идея. Также думал вынести такую проверку в RequestListener, но пока смутно представляю, как такое будет работать. На данный момент типовые проверки вынес в трейты, а контроллер имплементировал от интерфейса с методами, как в трейте.
Есть ли какое-то наиболее подходящее решение данной проблемы ?