You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As a follow-on to #406, we should investigate whether we can set an outer etag or last-modified header to enable 304 not modified responses -- saving egress bytes.
We cannot simply propagate the original headers from the backend, because that might prevent the update of the signature -- if a resource remains unchanged for longer than the SXG is valid, then the server will keep saying "304 not modified" even though the SXG is expired.
We cannot simply include the SXG signature in an etag because that is too specific. The signature includes the current date, so it will never match an if-none-match request.
It needs some notion of granulated date -- the date of the resource, rounded to the nearest multiple of N, where N is, say, 25% of the signature duration. This would allow 304s, while still allowing signature (date/expires) updates.
The text was updated successfully, but these errors were encountered:
As a follow-on to #406, we should investigate whether we can set an outer
etag
orlast-modified
header to enable304 not modified
responses -- saving egress bytes.We cannot simply propagate the original headers from the backend, because that might prevent the update of the signature -- if a resource remains unchanged for longer than the SXG is valid, then the server will keep saying "304 not modified" even though the SXG is expired.
We cannot simply include the SXG signature in an etag because that is too specific. The signature includes the current date, so it will never match an
if-none-match
request.It needs some notion of granulated date -- the date of the resource, rounded to the nearest multiple of N, where N is, say, 25% of the signature duration. This would allow 304s, while still allowing signature (date/expires) updates.
The text was updated successfully, but these errors were encountered: