[5.x] Static cache response statuses #10334
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR allows developers to figure out if a given response was statically cached or not.
For example, in a custom middleware...
The
ResponseStatusTracker
class exists purely because we can't put arbitrary properties on classes in PHP anymore. If we could, we'd just pop a$staticCacheResponseCode
property on theRequest
via a macro. Alas.The
ResponseStatus
enum will let us have different statuses for static cache types, similar to how Cloudflare does it. e.g.hit
for when serving from cache,miss
when served fresh, etc. This PR only introduceshit
for now.We considered simply adding
X-Statamic-Static-Cache: hit
headers to the response and let developers read those - but we don't want to expose that people are using Statamic. Some people don't like that.