fix(cache): Cache-Control must-revalidate sur home + dept
Some checks are pending
Deploy info-canicule / deploy (push) Waiting to run

Le navigateur cachait l ancienne version HTML → utilisateurs voyaient le
bulletin Vigilance précédent (carte du 25 mai 6h) malgré le bon HTML
servi par le serveur (carte du 25 mai 16h). max-age=60 + must-revalidate
force une revalidation conditionnelle à chaque visite > 1 min.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Florian 2026-05-26 02:46:20 +02:00
parent ac46637377
commit e72f25b33d
2 changed files with 7 additions and 0 deletions

View file

@ -21,6 +21,8 @@ if (!dept) {
return new Response('Département introuvable', { status: 404 }); return new Response('Département introuvable', { status: 404 });
} }
Astro.response.headers.set('Cache-Control', 'public, max-age=60, must-revalidate');
const drom = isDrom(dept.code); const drom = isDrom(dept.code);
// Fetch en parallèle des 3 sources externes (vigilance MF, climato data.gouv, hourly MF SYNOP). // Fetch en parallèle des 3 sources externes (vigilance MF, climato data.gouv, hourly MF SYNOP).

View file

@ -10,6 +10,11 @@ import type { VigilanceAlert } from '../lib/vigilance';
export const prerender = false; export const prerender = false;
// Force la revalidation côté navigateur — la page change toutes les ~5 min
// (cache Valkey TTL + bulletins MF), donc on évite le cache local agressif
// qui faisait servir une carte de la veille.
Astro.response.headers.set('Cache-Control', 'public, max-age=60, must-revalidate');
let snapshot; let snapshot;
let error: string | null = null; let error: string | null = null;
try { try {