brotli
The brotli middleware provides Brotli compression to responses for Flame instances.
You can read source code of this middleware on GitHubopen in new window and API documentation on pkg.go.devopen in new window.
Installation
The minimum requirement of Go is 1.16.
go get github.com/flamego/brotli
Usage examples
You should register the brotli.Brotli
open in new window before all other middleware or handlers that would write response to clients, and it works out-of-the-box with the default settings:
package main
import (
"github.com/flamego/brotli"
"github.com/flamego/flamego"
)
func main() {
f := flamego.Classic()
f.Use(brotli.Brotli())
f.Get("/", func() string {
return "Hello, Brotli!"
})
f.Run()
}
The brotli.Options
open in new window can be used to further customize the behavior of the middleware:
package main
import (
"github.com/flamego/brotli"
"github.com/flamego/flamego"
)
func main() {
f := flamego.Classic()
f.Use(brotli.Brotli(
brotli.Options{
CompressionLevel: 11, // Best compression
},
))
f.Get("/", func() string {
return "Hello, Brotli!"
})
f.Run()
}