If-Unmodified-Since

Class: \Aedart\ETags\Preconditions\Rfc9110\IfUnmodifiedSince

Applicable

When If-Match is NOT present, If-Unmodified-Since header is available, and when the requested resource has a last modified date available.

Condition

  1. If the resources' last modification date is earlier than or equal to the date provided in the If-Unmodified-Since header, the condition is true.
  2. Otherwise, the condition is false.

When it passes

When condition passes, evaluation continues to If-None-Match precondition.

When it fails

If the request is state-changing, e.g. POST, PUT, PATCH... etc, the precondition will attempt to detect whether the requested state-change has already succeeded or not. This is done via the hasStateChangeAlreadySucceeded(), in the given resource. Should a state-change already have succeeded, then the abortStateChangeAlreadySucceeded() action method is invoked.

When the request is not state-changing, e.g. for GET, HEAD requests, or when a state-change could not be determined, the abortPreconditionFailed() action method is invoked.

References