an middleware
This commit is contained in:
22
src/xx-http-server-middleware.go
Normal file
22
src/xx-http-server-middleware.go
Normal file
@@ -0,0 +1,22 @@
|
||||
package main
|
||||
|
||||
import ("net/http"; "fmt")
|
||||
|
||||
func hello(res http.ResponseWriter, req *http.Request) {
|
||||
res.Header().Set("Content-Type", "text/plain")
|
||||
fmt.Fprintln(res, "Hello wrapped world")
|
||||
}
|
||||
|
||||
func wrapMiddleware(f http.HandlerFunc) http.HandlerFunc {
|
||||
return func(res http.ResponseWriter, req *http.Request) {
|
||||
fmt.Println("before")
|
||||
f(res, req)
|
||||
fmt.Println("after")
|
||||
}
|
||||
}
|
||||
|
||||
func main() {
|
||||
handler := wrapMiddleware(hello)
|
||||
http.HandleFunc("/", handler)
|
||||
http.ListenAndServe(":5000", nil)
|
||||
}
|
||||
Reference in New Issue
Block a user