http状态码204理解

HTTP的状态码有很多种,主要有1xx(临时响应)、2xx(成功)、3xx(已重定向)、4xx(请求错误)以及5xx(服务器错误)五个大类,每个大类还对应一些具体的分类。平时我们接触比较多的是200、400、500等。

这里我们主要讨论一下状态码204,在HTTPRFC2616中关于204的描述如下:

Iftheclientisauseragent,itSHOULDNOTchangeitsdocumentviewfromthatwhichcausedtherequesttobesent.Thisresponseisprimarilyintendedtoallowinputforactionstotakeplacewithoutcausingachangetotheuseragent’sactivedocumentview,althoughanyneworupdatedmetainformationSHOULDbeappliedtothedocumentcurrentlyintheuseragent’sactiveview.

意思等同于请求执行成功,但是没有数据,浏览器不用刷新页面.也不用导向新的页面。如何理解这段话呢。还是通过例子来说明吧,假设页面上有个form,提交的url为http-204.htm,提交form,正常情况下,页面会跳转到http-204.htm,但是如果http-204.htm的相应的状态码是204,此时页面就不会发生转跳,还是停留在当前页面。另外对于a标签,如果链接的页面响应码为204,页面也不会发生跳转。

所以对于一些提交到服务器处理的数据,只需要返回是否成功的情况下,可以考虑使用状态码204来作为返回信息,从而省掉多余的数据传输。

相关推荐