Для GET запросов и так подразумевается, что они могут кешироваться не только беком, но и другими прмежуточными прокси.Справедливое замечание.
В HTTP есть header "ETag" который как раз для таких случаев.Но чтобы посчитать ETag для корзины, нужно всё равно на сервере её собрать и посчитать хэш. И в итоге получается экономия только на количестве передаваемых данных, а не на ресурсах сервера - проще и надёжнее выключить HTTP-кэширование совсем.
п.3 это уже сгенеренные данные ответа, без захода в бизнес логику приложения.Ну, то есть по сути - кэширование на уровне веб-сервера. Я бы сказал, что это почти всегда плохая идея, если речь идёт не про жёсткий-прежёсткий хайлоад.