HTTP HEAD动词的状态代码

Dou*_*oug 11 api rest http

根据RFC http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html:

HEAD方法与GET相同,只是服务器不能在响应中返回消息体.响应HEAD请求的HTTP头中包含的元信息应该与响应GET请求时发送的信息相同.该方法可用于获得关于请求所暗示的实体的元信息,而无需转移实体主体本身.此方法通常用于测试超文本链接的有效性,可访问性和最近的修改.

对于HEAD请求的响应可以是可缓存的,因为响应中包含的信息可以用于从该资源更新先前缓存的实体.如果新字段值指示缓存的实体与当前实体不同(如Content-Length,Content-MD5,ETag或Last-Modified中的更改所示),则缓存必须将缓存条目视为陈旧.

根据这个定义,我们是否应该返回200相应的GET操作,我们是否应该返回,204因为没有内容?

就个人而言,我认为更好的解释是使用204状态代码.你的解释是什么?

Bar*_*mar 17

请参见第10节,其中介绍了状态代码.代码描述200包括示例,它们包括HEAD.显然他们打算HEAD请求返回此代码.

说明204目的解释:

这种反应主要是为了允许操作发生而不引起改变到用户代理的活动文档视图的输入,尽管任何新的或更新的元信息应在用户代理的活动视图当前应用于该文档.