Categorygithub.com/jeevatkm/middleware
modulepackage
0.1.0
Repository: https://github.com/jeevatkm/middleware.git
Documentation: pkg.go.dev

# README

Middleware Build Status GoDoc GoCover

A collection of HTTP middleware/Handler function for use with Go's net/http package. Compatible with Goji, Gorilla, Negroni & net/http (amongst many others).

Start using it

  • Installation
go get github.com/jeevatkm/middleware
                   OR
go get gopkg.in/jeevatkm/middleware.v0
  • Import it in your code
import "github.com/jeevatkm/middleware"
                   OR
import "gopkg.in/jeevatkm/middleware.v0"

Examples

Refer examples

Vanilla net/http

func main() {
	homeHandler := http.HandlerFunc(home)

	// Adding Minify middleware
	// Note: If you use any Gzip middleware, add Minify middleware after that
	http.Handle("/", middleware.Minify(homeHandler))

	log.Println("Starting server at localhost:8000")
	http.ListenAndServe(":8000", nil)
}

Goji web framework

func main() {
	// Adding Minify middleware
	// Note: If you use any Gzip middleware, add Minify middleware after that
	goji.Use(middleware.Minify)

	goji.Get("/", gojiHome)
	goji.Serve()
}

Gorilla Mux

func main() {
	r := mux.NewRouter()
	r.HandleFunc("/", gorillaHome)

	// Adding Minify middleware
	// Note: If you use any Gzip middleware, add Minify middleware after that
	http.Handle("/", middleware.Minify(r))

	log.Println("Starting server at localhost:8000")
	http.ListenAndServe(":8000", nil)
}

Negroni web middleware

func main() {
	mux := http.NewServeMux()
	mux.HandleFunc("/", negroniHome)

	n := negroni.Classic()

	// Adding Minify middleware
	n.UseHandler(middleware.Minify(mux))

	n.Run(":8000")
}

License

Middleware released under MIT License

# Packages

Example for How to use with standard net/http package.

# Functions

Minify middleware is simple and generic using 'tdewolff/minify' package.