GZIP compression for API responses?
robogeek opened this issue · comments
David Herron commented
Is it possible for an API implemented with OpenAPI Backend to compress responses using GZIP?
I have such an API, and ran this test (going by advice found here https://davidwalsh.name/check-gzip):
$ curl -H "Accept-Encoding: gzip" -v -f http://localhost:9000/api/openadr/0.1/vens
* Trying 127.0.0.1:9000...
* Connected to localhost (127.0.0.1) port 9000 (#0)
> GET /api/openadr/0.1/vens HTTP/1.1
> Host: localhost:9000
> User-Agent: curl/8.1.2
> Accept: */*
> Accept-Encoding: gzip
>
< HTTP/1.1 200 OK
< X-Powered-By: Express
< Content-Type: application/json; charset=utf-8
< Content-Length: 1234
< ETag: W/"4d2-7rJdn+XVdF223rzgKmYSISBaAtc"
< Date: Tue, 20 Jun 2023 20:06:52 GMT
< Connection: keep-alive
< Keep-Alive: timeout=5
Notice that Accept-Encoding
is set, but the response was not encoded.
Viljami Kuosmanen commented
I feel that compression is clearly out of scope for OpenAPI backend. It’s pretty standard for most server implementations to support response compression with Accept Encoding headers out of the box. OpenAPI backend is designed to plug into a server / framework, not be the server.