Possible to cache ranged requests?



I have a worker that acts as a proxy to a protected S3 origin.
Some files, such as audio and video files, will be requested with range requests. If I pass this header to s3 I get a ranged response, and it’s not allowed to store this in the CF cache obviously.

Is it possible with a range request, to fetch the full file from my origin, store using a custom cache key (without range in the key), and then fetch from CF cache with ranged requests later somehow? I’ve tried various ways to do this, and cache api docs is a bit unclear on this to be honest. Anyone tried something similar with a working example?

Kind regards,