PROGRAMMING August 07, 2020

[Gin] 文字列をHTMLとして返す (Return string as HTML)

Words count 1.1k Reading time 1 mins. Read count 0

問題

Gin にはtemplateを使ったHTMLを返すメソッドは用意されていますが、

c.HTML(http.StatusOK, "index.tmpl", gin.H{
        "title": "My site",
})

文字列をHTMLとして返すメソッドは用意されてないようです。

解決策

//Do what you need to get the cached html
yourHtmlString := "<html><body>I am cached HTML!</body></html>"

//Write your 200 header status (or other status codes, but only WriteHeader once)
c.Writer.WriteHeader(http.StatusOK)
//Convert your cached html string to byte array
c.Writer.Write([]byte(yourHtmlString))

参考

https://github.com/gin-gonic/gin/issues/628#issuecomment-222012174

0%