github.com/secoba/wails/v2@v2.6.4/pkg/options/assetserver/middleware.go (about)

     1  package assetserver
     2  
     3  import (
     4  	"net/http"
     5  )
     6  
     7  // Middleware defines a HTTP middleware that can be applied to the AssetServer.
     8  // The handler passed as next is the next handler in the chain. One can decide to call the next handler
     9  // or implement a specialized handling.
    10  type Middleware func(next http.Handler) http.Handler
    11  
    12  // ChainMiddleware allows chaining multiple middlewares to one middleware.
    13  func ChainMiddleware(middleware ...Middleware) Middleware {
    14  	return func(h http.Handler) http.Handler {
    15  		for i := len(middleware) - 1; i >= 0; i-- {
    16  			h = middleware[i](h)
    17  		}
    18  		return h
    19  	}
    20  }