| @@ -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) | |||