github.com/gogf/gf@v1.16.9/.example/net/ghttp/server/router/group/batch.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  type Object struct{}
     9  
    10  func (o *Object) Show(r *ghttp.Request) {
    11  	r.Response.Writeln("Show")
    12  }
    13  
    14  func (o *Object) Delete(r *ghttp.Request) {
    15  	r.Response.Writeln("REST Delete")
    16  }
    17  
    18  func Handler(r *ghttp.Request) {
    19  	r.Response.Writeln("Handler")
    20  }
    21  
    22  func HookHandler(r *ghttp.Request) {
    23  	r.Response.Writeln("HOOK Handler")
    24  }
    25  
    26  func main() {
    27  	s := g.Server()
    28  	obj := new(Object)
    29  	s.Group("/api").Bind([]ghttp.GroupItem{
    30  		{"ALL", "*", HookHandler, ghttp.HookBeforeServe},
    31  		{"ALL", "/handler", Handler},
    32  		{"ALL", "/obj", obj},
    33  		{"GET", "/obj/show", obj, "Show"},
    34  		{"REST", "/obj/rest", obj},
    35  	})
    36  	s.SetPort(8199)
    37  	s.Run()
    38  }