Кстати по поводу мидлварей, у нас был такой кейс:
когда данные приходили с клиентской части, они подвергались обработке и преобразовывались по шаблону какой-то модели. Все это вытягивалось из реквеста и записывалось в body.
И в общем был момент, когда от реквеста уже след простыл а в body находились уже измененные данные, на данном шаге нужно было сопоставить целостность данных перед сохранением их в NoSQL БД.
Я к чему веду, - возможно middleware как функциональность с приватной областью видимости это норм, то с открытым доступом для нескольких разработчиков, которые начинают этим злоупотреблять - это уже хакерство.