GoFrame 教程
GoFrame 路由注册-对象注册
对象注册注册一个实例化的对象,以后每一个请求都交给该对象(同一对象)处理,该对象常驻内存不释放。 相关方法: func (s *Server) BindObject(pattern…
GoFrame 路由注册-分组路由
分组路由 GoFrame框架支持分组路由的注册方式,可以给分组路由指定一个prefix前缀(也可以直接给定/前缀,表示注册在根路由下),在该分组下的所有路由注册都将注册…
GoFrame 路由注册-规范路由
一、基本介绍 从v2.0版本开始,框架的Server组件提供了规范化的路由注册方式,更加适合团队规范化的使用场景,实现了以下特性: 规范化API按照结构化编程设计 规范化API…
GoFrame 路由管理-中间件/拦截器
GoFrame提供了优雅的中间件请求控制方式,该方式也是主流的WebServer提供的请求流程控制方式,基于中间件设计可以为WebServer提供更灵活强大的插件机制。…
GoFrame 请求输入-基本介绍
请求输入依靠 ghttp.Request 对象实现,ghttp.Request继承了底层的http.Request对象。ghttp.Request…
GoFrame 请求输入-复杂参数
复杂参数 ghttp.Request对象支持智能的参数类型解析(不区分请求提交方式及请求提交类型),以下为提交参数示例以及服务端对应解析的变量类型: Parameter Var…
GoFrame 请求输入-对象处理
对象转换 对象转换在请求处理中非常常见。我们推荐将输入和输出定义为struct结构体对象,以便于结构化的参数输入输出维护。GoFrame框架支持非常便捷的对象转换,支持将客…
GoFrame 请求输入-请求校验
Request对象支持非常完美的请求校验能力,通过给结构体属性绑定v标签即可。 需要注意的是,从goframe v1.16版本开始,如果参数采用结构化的输入输…
GoFrame 请求输入-默认值绑定
从v1.15版本开始,Request请求对象支持通过struct tag的方式为输入对象的属性绑定默认值。默认值的struct tag名称为d(…
GoFrame 请求输入-自定义变量
开发者可以在请求中自定义一些变量设置,自定义变量的获取优先级是最高的,可以覆盖原有的客户端提交参数。 自定义变量往往也可以做请求流程的变量共享,但是需要注意的是该变量会成为请求参数…
GoFrame 请求输入-Context
基本介绍 请求流程往往会在上下文中共享一些自定义设置的变量,例如在请求开始之前通过中间件设置一些变量,随后在路由服务方法中可以获取该变量并相应对一些处理。这种需求非常常见。在Go…
GoFrame 数据返回-基本介绍
HTTP Server的数据返回通过ghttp.Response对象实现,ghttp.Response对象实现了标准库的http.ResponseWrite…
GoFrame 数据返回-JSON/XML
相关方法: func (r *Response) WriteJson(content interface{}) error func (r *Response) WriteJson…
GoFrame 数据返回-Redirect
我们可以通过RedirectTo/RedirectBack来实现页面之间的跳转,该功能通过Location Header实现。相关方法: func (r *Res…
GoFrame 数据返回-Exit控制
Exit, ExitAll与ExitHook Exit: 仅退出当前执行的逻辑方法,不退出后续的请求流程,可用于替代return。 ExitAll:…
GoFrame 数据返回-文件下载
Response对象支持文件下载。 相关方法: func (r *Response) ServeFile(path string, allowIndex …bool) fu…
GoFrame WEB服务开发-服务配置
GoFrame框架的WebServer配置管理非常方便,支持多种配置方式以及若干配置方法。 配置对象 配置对象定义: https://pkg.go.dev/git…
GoFrame WEB服务开发-Cookie
基本介绍 接口文档:https://pkg.go.dev/github.com/gogf/gf/v2/net/ghttp#Cookie 常用方法: type Cookie func…
GoFrame Session-基本介绍
GoFrame框架提供了完善的Session管理能力,由gsession组件实现。由于Session机制在HTTP服务中最常用,因此后续章节中将着重以HTTP…
GoFrame Session-File
文件存储 在默认情况下,ghttp.Server的Session存储使用了内存+文件的方式,使用StorageFile对象实现。具体原理为: Session的数据操…