w3c / resource-timing

Resource Timing
https://w3c.github.io/resource-timing/
Other
119 stars 35 forks source link

Expose Content-Encoding to ResourceTiming #381

Open nicjansma opened 9 months ago

nicjansma commented 9 months ago

Hi,

Similar to request https://github.com/w3c/resource-timing/issues/203 to expose Content-Type, I would like to request exposing the Content-Encoding of each resource to ResourceTiming.

As we're starting to see experimentation and deployments of new content encodings such as Zstandard (zstd) and compression dictionary transports (zstd-d and br-d), we are moving toward content being delivered from a large set of possible encodings, even to the same client on different page loads or (sub)requests to the same domain.

When the content encoded was a small set: (none), gzip and brotli, one could often infer the encoding depending on the encoded/decoded body sizes, though that generally only works if one "owns" the content (has visibility into what the size would be for each encoding type).

Having an explicit .contentEncoding would help with some use-cases I can think of:

CC @pmeenan @horo-t

yoavweiss commented 9 months ago

Similar to Content-Type, this probably needs to be restricted to content that is CORS-enabled or same-origin. That's not a limitation for the dictionary compression encodings (as they have similar restrictions). This might be a limitation for non-dictionary ztd/brotli.

nicjansma commented 4 months ago

Discussed on the Feb 29, 2024 W3C WebPerf call:

Summary:

horo-t commented 4 months ago

Filed chromium side bug. https://crbug.com/327941462

+CC: @jxck who is interested in this.

Jxck commented 3 months ago

Thanks @horo-t I'm happy to work on it ! Let me check.