github.com/gogf/gf@v1.16.9/.example/net/ghttp/server/middleware/log.go (about) 1 package main 2 3 import ( 4 "net/http" 5 6 "github.com/gogf/gf/os/glog" 7 8 "github.com/gogf/gf/frame/g" 9 "github.com/gogf/gf/net/ghttp" 10 ) 11 12 func MiddlewareAuth(r *ghttp.Request) { 13 token := r.Get("token") 14 if token == "123456" { 15 r.Middleware.Next() 16 } else { 17 r.Response.WriteStatus(http.StatusForbidden) 18 } 19 } 20 21 func MiddlewareCORS(r *ghttp.Request) { 22 r.Response.CORSDefault() 23 r.Middleware.Next() 24 } 25 26 func MiddlewareLog(r *ghttp.Request) { 27 r.Middleware.Next() 28 g.Log().Println(r.Response.Status, r.URL.Path) 29 } 30 31 func main() { 32 s := g.Server() 33 s.Use(MiddlewareLog) 34 s.Group("/api.v2", func(group *ghttp.RouterGroup) { 35 group.Middleware(MiddlewareAuth, MiddlewareCORS) 36 group.ALL("/user/list", func(r *ghttp.Request) { 37 panic("custom error") 38 }) 39 }) 40 s.SetPort(8199) 41 s.Run() 42 }