github.com/gofiber/fiber/v2@v2.47.0/middleware/skip/skip.go (about)

     1  package skip
     2  
     3  import (
     4  	"github.com/gofiber/fiber/v2"
     5  )
     6  
     7  // New creates a middleware handler which skips the wrapped handler
     8  // if the exclude predicate returns true.
     9  func New(handler fiber.Handler, exclude func(c *fiber.Ctx) bool) fiber.Handler {
    10  	if exclude == nil {
    11  		return handler
    12  	}
    13  
    14  	return func(c *fiber.Ctx) error {
    15  		if exclude(c) {
    16  			return c.Next()
    17  		}
    18  
    19  		return handler(c)
    20  	}
    21  }