Я реализовал HTTP-кеш на моем последнем приложении 3.2 рельсов (скоро 4), используя вспомогательные методы, такие как fresh_when. Теперь я использовал тот же подход к действиям индекса. Нечто похожее на:Rails HTTP-кеш для запросов JS/JSON: как?
...
def index
@resources = Resource.all
fresh_when @resources
end
...
Это работает очень хорошо для HTML запросов (он отвечает либо с 304 кодом или 200 плюс шаблон index.html). Но я не могу заставить его работать для асинхронных js-запросов. На клиенте я периодически отправляю запрос «скрипт» на ту же конечную точку. Я ожидал, что он будет иметь подобное поведение (ответьте 304 или 200 с помощью шаблона index.js). Дело в том, что нет. Это всегда 200 OK и index.js. Теперь я проверил заголовки запросов, и хотя заголовок последнего-модифицированного-так нет, то есть этаг. Он должен работать, не так ли?