Documentation ¶
Index ¶
- Variables
- type WrappedResponseWriter
- func (wrw *WrappedResponseWriter) Flush()
- func (wrw *WrappedResponseWriter) Header() http.Header
- func (wrw *WrappedResponseWriter) Hijack() (net.Conn, *bufio.ReadWriter, error)
- func (wrw *WrappedResponseWriter) Write(d []byte) (int, error)
- func (wrw *WrappedResponseWriter) WriteHeader(statuscode int)
Constants ¶
This section is empty.
Variables ¶
View Source
var GZIP = func(handler http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { if strings.Contains(r.URL.Path, "metrics") { handler.ServeHTTP(w, r) return } for _, header := range r.Header["Upgrade"] { if header == "websocket" { handler.ServeHTTP(w, r) return } } if strings.Contains(r.Header.Get("Accept-Encoding"), "gzip") { gwriter := NewWrappedResponseWriter(w) defer gwriter.Flush() gwriter.Header().Set("Content-Encoding", "gzip") handler.ServeHTTP(gwriter, r) return } handler.ServeHTTP(w, r) }) }
Functions ¶
This section is empty.
Types ¶
type WrappedResponseWriter ¶
type WrappedResponseWriter struct {
// contains filtered or unexported fields
}
func NewWrappedResponseWriter ¶
func NewWrappedResponseWriter(w http.ResponseWriter) *WrappedResponseWriter
func (*WrappedResponseWriter) Flush ¶
func (wrw *WrappedResponseWriter) Flush()
func (*WrappedResponseWriter) Header ¶
func (wrw *WrappedResponseWriter) Header() http.Header
func (*WrappedResponseWriter) Hijack ¶
func (wrw *WrappedResponseWriter) Hijack() (net.Conn, *bufio.ReadWriter, error)
func (*WrappedResponseWriter) Write ¶
func (wrw *WrappedResponseWriter) Write(d []byte) (int, error)
func (*WrappedResponseWriter) WriteHeader ¶
func (wrw *WrappedResponseWriter) WriteHeader(statuscode int)
Click to show internal directories.
Click to hide internal directories.