在Gin中更改JSON数据的默认标头

时间:2015-10-01 14:37:58

标签: go go-gin

我注意到使用Gin返回这样的回复:

c.JSON(http.StatusOK, jsonData)

自动创建以下标题:

application/json; charset=utf-8

是否可以以某种方式修改标题以返回

application/json

我宁愿采用这种方法而不是将字符串拆分为;

2 个答案:

答案 0 :(得分:2)

  1. 将源代码修改为remove the ; charset=utf-8 string

  2. 有一个包装函数,可以在Content-Type调用之前手动设置gin.Context.JSON

    func JSON(c *gin.Context, code int, obj interface{}) {
        c.Header("Content-Type", "application/json")
        c.JSON(code, obj)
    }
    
    // ...
    
    JSON(c, http.StatusOK, jsonData)
    

答案 1 :(得分:0)

您可以像这样在请求中添加新的标头:

c.Request.Header.Add("x-request-id", requestID)