【发布时间】:2023-03-07 05:13:01
【问题描述】:
java spring 框架的 http 客户端似乎默认发送这个 Accept 头:
Accept: text/plain, application/json, application/*+json, */*
我对“application/*+json”部分很好奇。我相信这样做的目的是匹配任何以 application/ 开头并以 +json 结尾的 mime 类型 - 例如。 application/vnd.api+json.
但是看着RFC 7231 section 5.3.2 它说:
media-range = ( "*/*"
/ ( type "/" "*" )
/ ( type "/" subtype )
) *( OWS ";" OWS parameter )
这似乎只允许使用 * 而不是子类型,而不是它的一部分 - 暗示“application/*+json”应该只匹配名称中实际上是 * 的 mime 类型。
mime 类型的“+”语法通常在 https://www.rfc-editor.org/rfc/rfc6839 中定义 - 但是其中似乎没有任何内容允许将其应用于 HTTP RFC 定义的通配符。
是否有其他一些 RFC 扩大了定义或正在发送错误的 Accept: 标头?
【问题讨论】:
标签: http mime-types