Het verzoek van 4. bereikt niet eens de redis-cache, omdat het een lokale cache retourneert (let op de "Van schijfcache" in de antwoordcode).
U moet onderscheid maken tussen een openbare cache (d.w.z. de servercache die door alle gebruikers wordt gebruikt) en een privécache (de browsercache van de gebruiker).
Ik denk dat bij gebruik van cache_page
decorator, behalve het cachen van het verzoek, stelt het ook "Cache-control" responsheaders in om een privécache van het verzoek toe te staan. De browser gebruikt die headers om het verzoek lokaal in de cache te plaatsen en een lokaal in de cache opgeslagen antwoord terug te sturen tot max-age
verloopt.
Om dit gedrag te voorkomen, kunt u op serverniveau @never_cache
. gebruiken decorateur, die Cache-control
. instelt responsheaders om lokale caching te voorkomen, of gebruik @cache_control(public=True)
om alleen de openbare cache van het verzoek toe te staan (dit past ook de responsheaders van het cachebeheer dienovereenkomstig aan).
Meer over Cache beheren.