Response支持模板文件/内容解析输出,或者模板文件/内容解析返回。与直接使用模板对象解析模板功能不同的是,Response的解析支持一些请求相关的内置变量。模板解析包含以下方法:

    1. WriteTpl*方法用于模板输出,解析并输出模板文件,也可以直接解析并输出给定的模板内容。
    2. ParseTpl*方法用于模板解析,解析模板文件或者模板内容,返回解析后的内容。

    解析模板时组件底层会自动通过Request对象获取当前链路的Context上下文变量并传递给模板引擎,因此开发者不用显示给模板引擎传递Context上下文变量。

    内置变量

    访问默认的配置管理(config.toml)对象配置项。

    使用方式

    1. {{.Config.配置项}}

    使用方式

    1. {{.Cookie.键名}}

    访问当前请求的Session对象参数值。

    使用方式

    Query

    访问当前Query String中的请求参数值。

      访问当前表单请求参数值。

      使用方式

      1. {{.Form.键名}}

      Request

      访问当前请求参数值(不区分参数提交方式)。

      使用方式

      使用示例

      1. package main
      2. import (
      3. "github.com/gogf/gf/v2/frame/g"
      4. "github.com/gogf/gf/v2/net/ghttp"
      5. func main() {
      6. s := g.Server()
      7. s.BindHandler("/", func(r *ghttp.Request){
      8. r.Session.Set("name", "john")
      9. content :=`Config:{{.Config.redis.cache}}, Cookie:{{.Cookie.theme}}, Session:{{.Session.name}}, Query:{{.Query.name}}`
      10. r.Response.WriteTplContent(content, nil)
      11. })
      12. s.SetPort(8199)
      13. s.Run()
      14. }
      1. # Redis数据库配置
      2. [redis]
      3. cache = "127.0.0.1:6379,1"

      执行后,访问 ,输出结果为: