终于又到一个重头戏了。在整个服务端开发中,一个是API,一个就是网页,当前的API大部分都是通过JSON提供了,而网页就是通过HTML提供了。所以对于这么大的需求,Gin当然不会忘记,为我们提供了很多方便的操作。
html/template
在聊Gin的HTML渲染之前,先聊聊Golang(Go语言)内置的html/template
,因为Gin的HTML渲染就是基于html/template
实现的。
func main() {
r := gin.Default()
r.GET("/html", func(c *gin.Context) {
c.Status(200)
const templateText = `微信公众号: {
{printf "%s" .}}`
tmpl, err := template.New("htmlTest").Parse(templateText)
if err != nil {
log.Fatalf("parsing: %s", err)
}
tmpl.Execute(c.Writer, "flysnow_org")
})
r.Run(":8080")
}
这段代码是通过Golang内置原生的html/template
达到HTML渲染的目的,运行这段程序,访问http://localhost:8080/html
可以看到如下信息:
微信公众号: flysnow_org
Gin 实现
我们自己实现的这些,看着是比较臃肿的,在Gin中,它做了很好的封装,实现起来就很简单。
html/index.html
微信公众号: {
{printf "%s" .}}
func main() {
r := gin.Default()
r.LoadHTMLFiles("html/index.html")
r.GET("/html", func(c *gin.Context) {
c.HTML(200, "