I’m using Gin Gonic on a project I’m working on at work these days. I was in a bit of a pickle where I had to specify a response body that I already had as a string, but I needed to put the correct content type header on the response (meaning I couldn’t use the built in .String or .JSON methods.
I had to dig around a bit in the source code a bit to figure this one out. So, If you want to set a custom response header on a gin response, do it like this
imports (
"github.com/gin-gonic/gin"
"github.com/gin-gonic/gin/render"
)
func whatever() {
...
c.Render(
http.StatusOK, render.Data{
ContentType: "application/json",
Data: []byte(response),
})
...
}