Aller au contenu principal

4.3. Validation

Lorsqu'un cache possède une ou plusieurs réponses stockées pour un URI demandé, mais ne peut en servir aucune (par exemple, parce qu'elles ne sont pas fraîches, ou qu'une directive de requête l'interdit), il peut utiliser le mécanisme de requête conditionnelle [RFC7232] dans la requête transmise pour donner au serveur d'origine l'opportunité de sélectionner une réponse stockée valide à utiliser, en mettant à jour les métadonnées stockées dans le processus, ou de remplacer la ou les réponses stockées par une nouvelle réponse. Ce processus est connu sous le nom de "validation" ou "revalidation" de la réponse stockée.


4.3.1. Sending a Validation Request (Envoi d'une requête de validation)

Lors de la génération d'une requête conditionnelle pour validation, un cache commence soit avec une requête qu'il tente de satisfaire, soit (s'il initie la requête de manière indépendante) synthétise une requête en utilisant une réponse stockée en copiant la méthode, l'URI cible et les champs d'en-tête de requête pertinents.

Il met ensuite à jour cette requête avec un ou plusieurs champs d'en-tête de précondition. Ceux-ci contiennent des métadonnées de validateur (Section 2.3 de [RFC7232]) extraites de la ou des réponses stockées en cours de validation. En général, cela inclura les valeurs des champs Last-Modified et/ou ETag de la réponse stockée.

Le cache peut ensuite envoyer la requête conditionnelle au serveur d'origine (ou, potentiellement, à un cache en aval répertorié dans un champ d'en-tête Via).