github.com/gogf/gf@v1.16.9/.example/net/ghttp/server/middleware/param.go (about)

     1  package main
     2  
     3  import (
     4  	"github.com/gogf/gf/frame/g"
     5  	"github.com/gogf/gf/net/ghttp"
     6  )
     7  
     8  // 前置中间件1
     9  func MiddlewareBefore1(r *ghttp.Request) {
    10  	r.SetParam("name", "GoFrame")
    11  	r.Response.Writeln("set name")
    12  	r.Middleware.Next()
    13  }
    14  
    15  // 前置中间件2
    16  func MiddlewareBefore2(r *ghttp.Request) {
    17  	r.SetParam("site", "https://goframe.org")
    18  	r.Response.Writeln("set site")
    19  	r.Middleware.Next()
    20  }
    21  
    22  func main() {
    23  	s := g.Server()
    24  	s.Group("/", func(group *ghttp.RouterGroup) {
    25  		group.Middleware(MiddlewareBefore1, MiddlewareBefore2)
    26  		group.ALL("/", func(r *ghttp.Request) {
    27  			r.Response.Writefln(
    28  				"%s: %s",
    29  				r.GetParamVar("name").String(),
    30  				r.GetParamVar("site").String(),
    31  			)
    32  		})
    33  	})
    34  	s.SetPort(8199)
    35  	s.Run()
    36  }