wagtail-cache icon indicating copy to clipboard operation
wagtail-cache copied to clipboard

Use etags

Open gwenya opened this issue 1 year ago • 0 comments

As discussed in #69 this PR sets Etag headers on responses and returns a Not Modified response instead of the cached response if the client sent an If-None-Match header that matches the Etag of the cached response. The Etag is set with Django's set_response_etag() util, which just hashes the content of the response. If the response already has an etag then that is respected.

It also adjusts the Cache-Control header to either set no-cache or must-revalidate depending on whether the response has a max-age.

I am not sure yet what the Cache-Control and Expires headers on a Not Modified response should be set to.

gwenya avatar Jul 16 '24 10:07 gwenya