我正在构建一个 Web 应用程序,它可以通过PUT
,POST
和JSON 格式接受资源表示PATCH
。x-www-form-urlencoded
如果我收到另一种格式的请求正文,我想发送一个415
响应,以及一些声明我接受哪些格式的附加数据(以类似于405
响应的强制Allow:
标头的方式)。我在HTTP 406 和 415 错误代码的一个答案中看到,其中回答的人不知道是否定义了这样的机制,RFC 2616 在这方面没有提及任何内容,一些粗略的谷歌搜索也没有出现。
Accept:
即使将其定义为请求标头,我也想使用。将其重新用于此响应似乎是最合适的。人家同意吗?有人有更好的建议吗?
编辑:我在发送“415 unsupported media type”时发现指定支持的媒体类型,它专门询问是否有这个标准。正确且被接受的答案基本上是no,但那里的受访者也和我有同样的想法,即 Accept 将是一个很好的标题,可以用来提供这些信息。这促使Julian Reschke向 HTTP 工作组发送了一条消息,询问是否应该定义在响应中发送标头的含义。那封电子邮件只收到了一封回复,他们同意它是必要的,并且接受似乎是合适的。Accept:
请注意,我不是在询问是否允许我发送 Accept 标头,任何标头都可以在任一方向发送,但只有规范中定义的标头对中介具有意义(语义),并且任何未加前缀的意外标头withX-
可能会与 HTTP 的未来版本发生冲突。这不打扰我。