faygo中已经定义了个函数类型的Handler,源码如下:
type HandlerFunc func(ctx *Context) error
func (h HandlerFunc) Serve(ctx *Context) error {
return h(ctx)
}
当Handler中不直接依赖请求参数时,建议使用函数类型,因为理论上它的执行效率比结构体类型要高一点儿。
下面展示两个示例:
func Count(prefix string) faygo.HandlerFunc {
var count uint64
return func(ctx *faygo.Context) error {
count++
return ctx.String(200, "%s %d", prefix, count)
}
}
var Name = faygo.HandlerFunc(func(ctx *faygo.Context) error {
return ctx.String(200, "faygo")
})
- 目录
- 上一节: 4 操作与中间件
- 下一节: 4.2 结构体类型Handler