Browse Source

middleware

ls 4 years ago
parent
commit
28ee45cfcf
2 changed files with 23 additions and 6 deletions
  1. 16 0
      middleware.go
  2. 7 6
      serve.go

+ 16 - 0
middleware.go

@@ -0,0 +1,16 @@
+package myth
+
+import (
+	"net/http"
+)
+
+// Middleware http middleware
+type Middleware func(http.HandlerFunc) http.HandlerFunc
+
+// MiddlewareChain applies middlewares to a http.HandlerFunc
+func MiddlewareChain(fn http.HandlerFunc, mws ...Middleware) http.HandlerFunc {
+	for _, m := range mws {
+		fn = m(fn)
+	}
+	return fn
+}

+ 7 - 6
serve.go

@@ -8,8 +8,7 @@ import (
 	"os/signal"
 	"syscall"
 	"time"
-
-	"golang.org/x/net/http2"
+	//"golang.org/x/net/http2"
 )
 
 var (
@@ -29,10 +28,12 @@ func newServe(addr string, router http.Handler) *http.Server {
 
 func run(useV2 bool, addr, certFile, keyFile string, router http.Handler) {
 	s := newServe(addr, router)
-	if useV2 {
-		http2.VerboseLogs = false
-		http2.ConfigureServer(s, nil)
-	}
+	/*
+		if useV2 {
+			http2.VerboseLogs = false
+			http2.ConfigureServer(s, nil)
+		}
+		// */
 	errc := make(chan error)
 	go func() {
 		c := make(chan os.Signal)