@@ -98,6 +98,7 @@ func (self *compressor) Write(data []byte) (size int, err error) { | |||
return self.ResponseWriter.Write(data) | |||
} | |||
// GZIP/Deflate compression supports. | |||
func Compress(next http.Handler) http.Handler { | |||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { | |||
if r.Header.Get("Sec-WebSocket-Key") != "" || r.Method == "HEAD" { |
@@ -2,6 +2,7 @@ package middleware | |||
import "net/http" | |||
// Header adds the given response headers to the upcoming `http.ResponseWriter`. | |||
func Header(values map[string]string) func(http.Handler) http.Handler { | |||
return func(next http.Handler) http.Handler { | |||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { |
@@ -7,6 +7,7 @@ import ( | |||
"github.com/Sirupsen/logrus" | |||
) | |||
// Logger renders the simple HTTP accesses logs for the upcoming http.Handler. | |||
func Logger(next http.Handler) http.Handler { | |||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { | |||
start := time.Now() |
@@ -133,9 +133,7 @@ func (self *xsrf) generate() { | |||
self.token = token | |||
} | |||
// --------------------------------------------------------------------------- | |||
// XSRF Middleware Supports | |||
// --------------------------------------------------------------------------- | |||
// XSRF serves as Cross-Site Request Forgery protection middleware. | |||
func XSRF(next http.Handler) http.Handler { | |||
fn := func(w http.ResponseWriter, r *http.Request) { | |||
x := new(xsrf) |