Documentation ¶
Index ¶
- type BeforeAfterController
- type ParamsController
- func (p *ParamsController) Index() string
- func (p *ParamsController) Param1(request *http.Request, rw http.ResponseWriter) string
- func (p *ParamsController) Param2(session LVSession.HttpSession) string
- func (p *ParamsController) Param3(context *leafveingo.HttpContext) string
- func (p *ParamsController) Param4(params struct{ ... }) string
- func (p *ParamsController) Param5(params UserInfo) string
- func (p *ParamsController) Param6() interface{}
- func (p *ParamsController) Param7() leafveingo.HtmlOut
- func (p *ParamsController) PostParam6(params User) string
- func (p *ParamsController) PostParam7(params UserBean) string
- type PointerController
- type ReturnParamController
- func (r *ReturnParamController) Byte() leafveingo.ByteOut
- func (r *ReturnParamController) DispTest(params struct{ ... }) string
- func (r *ReturnParamController) Dispatcher(params struct{ ... }) interface{}
- func (r *ReturnParamController) File() interface{}
- func (r *ReturnParamController) Html() leafveingo.HtmlOut
- func (r *ReturnParamController) Json(params struct{ ... }) interface{}
- func (r *ReturnParamController) Redirect(params struct{ ... }) interface{}
- func (r *ReturnParamController) Template(params struct{ ... }) interface{}
- func (r *ReturnParamController) Text() string
- type RouterController
- func (arc *RouterController) Forum(params struct{ ... }) string
- func (arc *RouterController) ForumJson(params struct{ ... }) interface{}
- func (arc *RouterController) MD5(params struct{ ... }) string
- func (arc *RouterController) PostThread(params struct{ ... }) string
- func (arc RouterController) RouterMethodParse(option *leafveingo.RouterOption) (funcName string, params map[string]string)
- func (arc *RouterController) Space(params struct{ ... }) string
- func (arc *RouterController) Thread(params struct{ ... }) string
- type SessionController
- func (s *SessionController) Context(context *leafveingo.HttpContext) string
- func (s *SessionController) Form(context *leafveingo.HttpContext) leafveingo.HtmlOut
- func (s *SessionController) PostForm(context *leafveingo.HttpContext) string
- func (s *SessionController) Session(sess session.HttpSession) string
- type StatusController
- type TemplateController
- type User
- type UserBean
- type UserInfo
- type UserType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BeforeAfterController ¶
type BeforeAfterController struct {
// contains filtered or unexported fields
}
before after 演示控制器 需要实现 lv.BeforeAfterController 控制器Before(...)和After(...)函数
func (*BeforeAfterController) After ¶
func (ba *BeforeAfterController) After(context *lv.HttpContext, option *lv.RouterOption)
*
- after *
- @param context 固定参数
- @param option 固定参数
func (*BeforeAfterController) Before ¶
func (ba *BeforeAfterController) Before(context *lv.HttpContext, option *lv.RouterOption) lv.HttpStatus
*
- before *
- @param context 固定参数
- @param option 固定参数
- @return 根据需求放回状态代码,200通过,其他将会跳转相应的状态页面,也可以返回lv.StatusNil自行响应输出。
type ParamsController ¶
type ParamsController struct {
// contains filtered or unexported fields
}
演示控制器参数
func (*ParamsController) Param1 ¶
func (p *ParamsController) Param1(request *http.Request, rw http.ResponseWriter) string
获取 *http.Request 和 http.ResponseWriter参数
func (*ParamsController) Param2 ¶
func (p *ParamsController) Param2(session LVSession.HttpSession) string
获取session
func (*ParamsController) Param3 ¶
func (p *ParamsController) Param3(context *leafveingo.HttpContext) string
获取上下文HttpContext
func (*ParamsController) Param4 ¶
func (p *ParamsController) Param4(params struct { Id string // id 切记首字母大写,其他与参数匹配 Id = id, ID = ID | iD Name string // name }) string
参数结构的封装
func (*ParamsController) Param5 ¶
func (p *ParamsController) Param5(params UserInfo) string
func (*ParamsController) PostParam6 ¶
func (p *ParamsController) PostParam6(params User) string
post 请求打印参数
func (*ParamsController) PostParam7 ¶
func (p *ParamsController) PostParam7(params UserBean) string
post 打印集合参数
type PointerController ¶
type PointerController struct {
// contains filtered or unexported fields
}
before after 演示控制器 运行时注意观察控制台打印的参数地址。
控制器分的指针传递和值传递(lv_reflect_router.go, lv_restful_router.go均已实现)
值传递: CreateReflectController("/pointer/struct/", PointerController{}) 每次请求(http://localhost:8080/pointer/struct/) 都会根据设置的控制器类型新建立一个对象进行处理,直到一次请求周期结束。 指针传递: CreateReflectController("/pointer/", new(PointerController)) 跟值传递相反,每次请求时都会使用设置的控制器地址进行处理,应用结束也不会改变,每次请求控制器都不会改变内存地址 这里涉及到并发时同时使用一个内存地址处理的问题,使用时需要注意
func (*PointerController) After ¶
func (ba *PointerController) After(context *lv.HttpContext, option *lv.RouterOption)
*
- after *
- @param context 固定参数
- @param option 固定参数
func (*PointerController) Before ¶
func (ba *PointerController) Before(context *lv.HttpContext, option *lv.RouterOption) lv.HttpStatus
*
- before *
- @param context 固定参数
- @param option 固定参数
- @return 根据需求放回状态代码,200通过,其他将会跳转相应的状态页面,也可以返回lv.StatusNil自行响应输出。
type ReturnParamController ¶
type ReturnParamController struct {
// contains filtered or unexported fields
}
控制器返回参数演示
func (*ReturnParamController) Byte ¶
func (r *ReturnParamController) Byte() leafveingo.ByteOut
输出 []byte
func (*ReturnParamController) DispTest ¶
func (r *ReturnParamController) DispTest(params struct { Info string }) string
func (*ReturnParamController) Dispatcher ¶
func (r *ReturnParamController) Dispatcher(params struct { Info string }) interface{}
控制器转发
func (*ReturnParamController) Html ¶
func (r *ReturnParamController) Html() leafveingo.HtmlOut
输出text html, Content-Type = text/plain
func (*ReturnParamController) Json ¶
func (r *ReturnParamController) Json(params struct { T int }) interface{}
输出json Content-Type = application/json
func (*ReturnParamController) Redirect ¶
func (r *ReturnParamController) Redirect(params struct { Url string }) interface{}
重定向url
func (*ReturnParamController) Template ¶
func (r *ReturnParamController) Template(params struct { Info string T int }) interface{}
输出模板
func (*ReturnParamController) Text ¶
func (r *ReturnParamController) Text() string
输出 text, Content-Type = text/plain
type RouterController ¶
type RouterController struct {
// contains filtered or unexported fields
}
高级路由器演示控制器
func (*RouterController) Forum ¶
func (arc *RouterController) Forum(params struct { Bid int Tid int }) string
func (*RouterController) ForumJson ¶
func (arc *RouterController) ForumJson(params struct { Bid int Tid int }) interface{}
url 后缀为json
func (*RouterController) MD5 ¶
func (arc *RouterController) MD5(params struct { Md5 string }) string
func (*RouterController) PostThread ¶
func (arc *RouterController) PostThread(params struct { Bid int Tid int Pid int }) string
func (RouterController) RouterMethodParse ¶
func (arc RouterController) RouterMethodParse(option *leafveingo.RouterOption) (funcName string, params map[string]string)
解析的URL http://localhost:8080/router/forum-([0-9]+)-([0-9]+)(\.\w+)? http://localhost:8080/router/thread-([0-9]+)-([0-9]+)-([0-9]+) http://localhost:8080/router/space/(username|uid)/(.+)/ http://localhost:8080/router/[0-9a-zA-Z]{32}
type SessionController ¶
type SessionController struct {
// contains filtered or unexported fields
}
http session 演示控制器
func (*SessionController) Context ¶
func (s *SessionController) Context(context *leafveingo.HttpContext) string
上下文对session的操作
func (*SessionController) Form ¶
func (s *SessionController) Form(context *leafveingo.HttpContext) leafveingo.HtmlOut
演示form token的操作
func (*SessionController) PostForm ¶
func (s *SessionController) PostForm(context *leafveingo.HttpContext) string
演示form token的验证操作
func (*SessionController) Session ¶
func (s *SessionController) Session(sess session.HttpSession) string
基本的获取session
type StatusController ¶
type StatusController struct {
// contains filtered or unexported fields
}
状态页 演示控制器
type TemplateController ¶
type TemplateController struct {
// contains filtered or unexported fields
}
模板演示控制器