spring 中的 MIME 类型和版本控制
mime type and versioning in spring
我正在尝试使用以下内容向我的 api 添加一个版本:
@RequestMapping (method = RequestMethod.GET, value = "/public/api/item", produces = "application/vnd.company.api.v1+hal+json")
我遇到了一个例外:
org.springframework.web.HttpMediaTypeNotAcceptableException: 找不到可接受的表示形式
问题好像是mime类型不支持多于1个+号和类型。如果我将类型限制为仅 vnd.company.api.v1+json 那么它就可以工作。
任何人都知道 mime 类型是否仅限于 2 个以上字符,以及是否有人使用 hal+json 类型进行版本控制。谢谢
hal+json
本身不是扩展吗?换句话说,我不认为你的后缀应该是 +hal+json
,它只是 +json
加上你唯一的供应商前缀(可以在某处包含 hal
)。
使用 .
而不是像其他一些组织那样使用 +
怎么样?
application/vnd.company.api.v1.hal+json
http://www.iana.org/assignments/media-types/media-types.xhtml
我正在尝试使用以下内容向我的 api 添加一个版本:
@RequestMapping (method = RequestMethod.GET, value = "/public/api/item", produces = "application/vnd.company.api.v1+hal+json")
我遇到了一个例外: org.springframework.web.HttpMediaTypeNotAcceptableException: 找不到可接受的表示形式
问题好像是mime类型不支持多于1个+号和类型。如果我将类型限制为仅 vnd.company.api.v1+json 那么它就可以工作。
任何人都知道 mime 类型是否仅限于 2 个以上字符,以及是否有人使用 hal+json 类型进行版本控制。谢谢
hal+json
本身不是扩展吗?换句话说,我不认为你的后缀应该是 +hal+json
,它只是 +json
加上你唯一的供应商前缀(可以在某处包含 hal
)。
使用 .
而不是像其他一些组织那样使用 +
怎么样?
application/vnd.company.api.v1.hal+json
http://www.iana.org/assignments/media-types/media-types.xhtml