En-tête If-Unmodified-Since
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
L'en-tête de requête HTTP If-Unmodified-Since rend la requête pour la ressource conditionnelle.
Le serveur enverra la ressource demandée (ou l'acceptera dans le cas d'une méthode POST ou d'une autre méthode qui n'est pas sûre) uniquement si la ressource sur le serveur n'a pas été modifiée après la date dans l'en-tête de requête.
Si la ressource a été modifiée après la date définie, la réponse sera une erreur 412 Precondition Failed.
L'en-tête If-Unmodified-Since est couramment utilisé dans les situations suivantes :
- En conjonction avec des méthodes non sûres comme
POST, cet en-tête peut être utilisé pour mettre en œuvre un contrôle d'accès optimiste (angl.), comme le font certains wikis : les révisions sont rejetées si le document stocké a été modifié depuis la récupération de l'original, évitant ainsi les conflits. - En conjonction avec une requête de plage utilisant l'en-tête
Range, cet en-tête peut être utilisé pour garantir que le nouveau fragment demandé provient d'un document non modifié.
| Type d'en-tête | En-tête de requête |
|---|---|
| En-tête de requête interdit | Non |
Syntaxe
If-Unmodified-Since: <day-name>, <day> <month> <year> <hour>:<minute>:<second> GMT
Directives
<day-name>-
L'un des mots
Mon,Tue,Wed,Thu,Fri,SatouSun(sensible à la casse). <day>-
Numéro de jour à 2 chiffres, par exemple « 04 » ou « 23 ».
<month>-
L'un des mots
Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec(sensible à la casse). <year>-
Numéro d'année à 4 chiffres, par exemple « 1990 » ou « 2018 ».
<hour>-
Numéro d'heure à 2 chiffres, par exemple « 09 » ou « 23 ».
<minute>-
Numéro de minute à 2 chiffres, par exemple « 04 » ou « 59 ».
<second>-
Numéro de seconde à 2 chiffres, par exemple « 04 » ou « 59 ».
- GMT
-
Temps sur le Méridien de Greenwich. Les dates HTTP sont toujours exprimées en GMT, jamais en heure locale.
Exemples
If-Unmodified-Since: Wed, 21 Oct 2015 07:28:00 GMT
Spécifications
| Specification |
|---|
| HTTP Semantics> # field.if-unmodified-since> |
Compatibilité des navigateurs
Voir aussi
- Le guide des requêtes conditionnelles HTTP
- L'en-tête
Last-Modified - Les en-têtes de requête de plage
If-Range,Range - Les en-têtes de requête conditionnelle
If-Match,If-Modified-Since,If-None-Match - Les codes de statut de réponse
304 Not Modified,412 Precondition Failed