Serving gziped connect via HTTP in golang
The builtin HTTP server in the golang standard library does not serve gziped content. However you can relatively easily add a wrapper function to compress data on the fly. The best tool to do this appears to be go.httpgzip. A basic example of its usage might look like this:
import (
"github.com/daaku/go.httpgzip"
"net/http"
)
func main() {
http.Handle("/", httpgzip.NewHandler(http.FileServer(http.Dir("."))))
err := http.ListenAndServe(":80", nil)
if err != nil {
panic("Error: " + err.Error())
}
}