[使用gin-gonic框架,有一个用golang编写的服务。
我只想支持application/json
作为mime类型,如果它始终以UTF-8格式,那将是很棒的。如果服务将获得不同编码的值,则该服务的业务逻辑可能会中断。
编写自定义中间件来检查Content-Type
标头是否具有值"application/json; charset=utf-8"
并在不存在时返回一些4xx状态是一个好主意吗?
更新:刚刚发现ctx.ContentType()不返回标头的charset
部分。有办法吗?
没有什么可以阻止您直接查看"Content-Type"
http标头,直到ctx.Request.Header.Get("Content-Type")
为止。
ContentType
提供了helper gin-gonic
方法,尤其是在查询输入数据的“纯净” mime类型而没有太多麻烦的情况下。