Encoding primitives for Dream.
The most common usage is to add the Dream_encoding.compress middleware to your Dream application:
let () =
Dream.run ~debug:true
@@ Dream.logger
@@ Dream_encoding.compress
@@ Dream.router [ Dream.get "/" (fun _ -> Dream.html "Hello World!") ]
@@ Dream.not_foundThe middleware will parse the Accept-Encoding header from the requests and compress the responses accordingly.
The library API also includes other lower-level functions for convenience, and are documented here.
As of now, the only supported encoding directives are gzip and deflate.
Support for more compression methods will come when they are supported in decompress, the underlying compression library used in dream-encoding.
- Support Brotli compression (see mirage/decompress#101)