My origin is returning the private cache control header. Are scenarios where something that has “private” in the cache control header will ever be cached?
First we need to settle which layer of the XDN is receiving these headers.
If the serverless layer is receives a response with a private cache control header, the behavior is up to you in your serverless code. You could for example proxy that response to the Edge tier and leave the cache control header or strip it out.
When the Edge layer receives a response with a private cache control header, the default behavior is to obey it unless it has been explicitly been forced otherwise. From Caching | Edgio Documentation
By default Moovweb XDN never caches responses which have
private
clause in theircache-control
header. Sometimes though it is desirable to cache such responses, intended for a single user of your site:
router.get('/some/path', ({ cache }) => {
cache({
// Other options...
edge: {
// Other options...
forcePrivateCaching: true, // Force caching of `private` responses
},
})
})
Note that this feature cannot be safely used with caching of
POST
and similar requests: if the way to signal that something must not be cached is throughprivate
but then you force caching ofprivate
responses, all responses will be cached.