go - Gin-Gonic内容类型限制

标签 go mime-types content-type go-gin

有一个使用gin-gonic框架以golang编写的服务。

我只想将application/json支持为mime类型,并且如果它始终以UTF-8格式运行,那就太好了。如果服务的业务逻辑将获得不同编码的值,则可能会中断。

编写自定义中间件以检查Content-Type header 是否具有值"application/json; charset=utf-8"并返回一些4xx状态(如果没有的话)是个好主意吗?

更新:
刚刚发现ctx.ContentType()不会返回 header 的charset部分。有办法吗?

最佳答案

没有什么可以阻止您直接根据"Content-Type"直接查看ctx.Request.Header.Get("Content-Type") http header 。
ContentType提供了辅助gin-gonic方法,特别适用于查询输入数据的“纯净” mime类型而没有太多麻烦的情况。

关于go - Gin-Gonic内容类型限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59455946/

相关文章:

grails - 如何在Grails中获取请求的Mime类型?

json - 如何将 Drupal 服务默认响应格式更改为 JSON?

javascript - 将我的 JS MIME 类型设置为 "text/javascript"

java - 在浏览器中获取 PDF 格式的响应

ruby-on-rails - 在 response_to block 的 JS 部分返回 HTML 会在 IE 中引发错误

go - 在单独的go例程中重置计时器

go - 可变参数函数的困难

go - 在结构上使用 interface{} 来检查它是否满足 golang 中的接口(interface)

go - 在 go 中处理来自网络的原始字节

c# - Controller.File() 的有效内容类型是什么?