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  }