在REST中接受标头

时间:2016-10-17 18:54:58

标签: java spring rest http http-headers

我总是在@RequestMapping使用生产和消费。

我知道发现了一个例子,在帖子请求中,@RequestMappingheaders = "Accept=application/json"。所以我的问题是什么呢?我们需要吗?

4 个答案:

答案 0 :(得分:1)

Produces和Consumes声明后端方法生成和使用的数据类型。 Accept是一个客户端标头,它告诉服务器你想要什么类型的内容。

答案 1 :(得分:0)

第一版produces上没有consumes@RequestMapping属性(我相信它们是在Spring 3.1中添加的)。在Spring为其添加特定支持之前,明确指定Accept标头是必需的方法。

答案 2 :(得分:0)

此标头指示客户端期望接收的数据格式。将预期标头设置为端点headers中的某个值(例如application/json)在语义上与在produces属性中设置它相同,但produces更智能,例如如果您可以生成多种数据类型(如XML和JSON),Spring可以自动选择合适的Producer来生成与收到的值相关的响应。

答案 3 :(得分:0)

在REST中,某些信息通过标题传达,例如。 session id,params等关键字如Accept,content-type,限制标题的内容为特定格式。 Accept request-header字段可用于指定响应可接受的某些媒体类型。 Accept标头可用于指示请求特别限于一小组所需类型,例如xml,json,媒体类型等。 RequestMapping注释可用于处理动态URI,其中一个或多个URI值用作参数。 希望它能消除疑虑,如果没有请联系......