Implement a CompressionFilter that compresses HTTP response bodies using GZIP encoding to reduce bandwidth usage and improve transfer speeds for clients.
Why:
- Real-world production feature
- Reduces bandwidth by ~60-80%
- Standard HTTP practice (browsers auto-decompress)
What:
A filter that:
- Checks client's Accept-Encoding: gzip header
- Compresses response body using java.util.zip.GZIPOutputStream
- Sets Content-Encoding: gzip header
- Can be disabled via configuration
Implement a CompressionFilter that compresses HTTP response bodies using GZIP encoding to reduce bandwidth usage and improve transfer speeds for clients.
Why:
What:
A filter that: