5.2.1 Request Cache-Control Directives
Dieser Abschnitt definiert Cache-Direktiven, die ein Client in einer HTTP-Anfrage verwenden kann.
5.2.1.1. max-age
Argument: delta-seconds
Die "max-age"-Anfragedirektive gibt an, dass der Client nicht bereit ist, eine Antwort zu akzeptieren, deren Alter größer ist als die angegebene Anzahl von Sekunden. Sofern die max-stale-Anfragedirektive nicht ebenfalls vorhanden ist, ist der Client nicht bereit, eine veraltete Antwort zu akzeptieren.
Diese Direktive verwendet die Token-Form der Argumentsyntax: z. B. 'max-age=5' nicht 'max-age="5"'. Ein Absender SOLLTE NICHT (SHOULD NOT) die Form mit Anführungszeichen generieren.
5.2.1.2. max-stale
Argument: delta-seconds
Die "max-stale"-Anfragedirektive gibt an, dass der Client bereit ist, eine Antwort zu akzeptieren, die ihre Frischelebensdauer überschritten hat. Wenn max-stale ein Wert zugewiesen wird, dann ist der Client bereit, eine Antwort zu akzeptieren, die ihre Frischelebensdauer um höchstens die angegebene Anzahl von Sekunden überschritten hat. Wenn max-stale kein Wert zugewiesen wird, dann ist der Client bereit, eine veraltete Antwort jeden Alters zu akzeptieren.
Diese Direktive verwendet die Token-Form der Argumentsyntax: z. B. 'max-stale=10' nicht 'max-stale="10"'. Ein Absender SOLLTE NICHT (SHOULD NOT) die Form mit Anführungszeichen generieren.
5.2.1.3. min-fresh
Argument: delta-seconds
Die "min-fresh"-Anfragedirektive gibt an, dass der Client bereit ist, eine Antwort zu akzeptieren, deren Frischelebensdauer nicht weniger als ihr aktuelles Alter plus die angegebene Zeit in Sekunden beträgt. Das heißt, der Client möchte eine Antwort, die mindestens für die angegebene Anzahl von Sekunden noch frisch sein wird.
Diese Direktive verwendet die Token-Form der Argumentsyntax: z. B. 'min-fresh=20' nicht 'min-fresh="20"'. Ein Absender SOLLTE NICHT (SHOULD NOT) die Form mit Anführungszeichen generieren.
5.2.1.4. no-cache
Die "no-cache"-Anfragedirektive gibt an, dass ein Cache NICHT (MUST NOT) eine gespeicherte Antwort verwenden darf, um die Anfrage ohne erfolgreiche Validierung auf dem Ursprungsserver zu erfüllen.
5.2.1.5. no-store
Die "no-store"-Anfragedirektive gibt an, dass ein Cache KEINEN Teil (MUST NOT) dieser Anfrage oder einer Antwort darauf speichern darf. Diese Direktive gilt sowohl für private als auch für gemeinsam genutzte Caches. "DARF NICHT speichern" bedeutet in diesem Kontext, dass der Cache die Informationen NICHT absichtlich (MUST NOT) in nicht flüchtigem Speicher speichern darf und sich nach bestem Bemühen (MUST) darum bemühen muss, die Informationen so schnell wie möglich nach der Weiterleitung aus dem flüchtigen Speicher zu entfernen.
Diese Direktive ist KEIN zuverlässiger oder ausreichender Mechanismus zur Gewährleistung der Privatsphäre. Insbesondere können bösartige oder kompromittierte Caches diese Direktive möglicherweise nicht erkennen oder befolgen, und Kommunikationsnetzwerke können anfällig für Abhören sein.
Beachten Sie, dass, wenn eine Anfrage, die diese Direktive enthält, aus einem Cache erfüllt wird, die no-store-Anfragedirektive nicht auf die bereits gespeicherte Antwort anwendbar ist.
5.2.1.6. no-transform
Die "no-transform"-Anfragedirektive gibt an, dass ein Vermittler (unabhängig davon, ob er einen Cache implementiert oder nicht) die Payload NICHT transformieren DARF (MUST NOT), wie in Abschnitt 5.7.2 von [RFC7230] definiert.
5.2.1.7. only-if-cached
Die "only-if-cached"-Anfragedirektive gibt an, dass der Client nur eine gespeicherte Antwort erhalten möchte. Wenn er diese Direktive erhält, SOLLTE (SHOULD) ein Cache entweder mit einer gespeicherten Antwort antworten, die mit den anderen Einschränkungen der Anfrage konsistent ist, oder mit einem 504 (Gateway Timeout)-Statuscode antworten. Wenn eine Gruppe von Caches als einheitliches System mit guter interner Konnektivität betrieben wird, DARF (MAY) ein Mitgliedscache eine solche Anfrage innerhalb dieser Gruppe von Caches weiterleiten.