Как кэшировать ответ HTTP POST?

Я хотел бы создать кэшируемый HTTP-ответ для запроса POST.

Моя фактическая реализация отвечает следующим образом на запрос POST:

HTTP/1.1 201 Created
Expires: Sat, 03 Oct 2020 15:33:00 GMT
Cache-Control: private,max-age=315360000,no-transform
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Content-Length: 9
ETag: 2120507660800737950
Last-Modified: Wed, 06 Oct 2010 15:33:00 GMT

.........

Но похоже, что браузеры (Safari, Firefox) не кэшируют ответ.

В HTTP RFC соответствующая часть говорит:

Ответы на этот метод не кэшируются, если только ответ включает соответствующие поля заголовка Cache-Control или Expires. Однако ответ 303 (см. Прочее) можно использовать для указания пользовательскому агенту получить кэшируемый ресурс.

Поэтому я думаю, что его следует кэшировать. Я знаю, что могу установить переменную сеанса, установить cookie и выполнить перенаправление 303, но я хочу кэшировать ответ на запрос POST.

Есть ли способ сделать это?

PS: Я ' Мы начали с простого 200 OK , поэтому он не работает.

Спасибо,

9
задан KARASZI István 7 October 2010 в 08:38
поделиться