1、状态码

  状态码:当客户端向服务器端发送请求时,描述返回的请求结果。借助状态码,用户可以知道服务端是正常处理了请求还是出现了错误。

  

  请求类别

  

2   2XX 成功

  2.1     200 OK

      请求被正常处理了,但是根据请求类型,来确定报文主体内容,head时报文主体为空。

  

  2.2   204 No Content

  该状态码表示服务器接收的请求已经成功处理,但是返回的响应报文中不含实体的主体部分,另外也不允许返回任何实体的主体。

  一般在只需从客户端往服务器发送信息,而对客户端不需要发送新的信息内容的情况下使用。

  

  2.3  206 partial Content

       该状态码表示客户端进行了范围请求,而服务器成功执行了这部分的GET请求。

  

3   3XX 重定向

  3.1  301 Move Permanently

       永久性重定向,该状态表示请求的资源已被分配了新的URL,以后使用新的URL进行访问。如果你把旧URL保存为书签,此时需要按照location首部字段重新保存。

  

  3.2  302 Found

  临时性重定向,表示请求资源已经被分配了新的URL,希望本次访问使用新的URL。

  

  3.3  303 See Other

  该状态码表示由于请求对应的资源存在着另一个URL,应使用GET方法定向获取请求的资源。303和302有着相同功能,但是303明确表示客户端应当采用GET方法获取资源,这点与302状态码有区别。

   

  当301、302、303响应状态码返回时,几乎所有的浏览器都会把POST改成GET,并删除请求报文中的主体,之后请求会自动再次发送。

  3.4  304 Not Modified

  该状态码表示客户端发送附件条件请求时,服务器允许请求访问资源,但是未满足条件的请况。304状态码返回时,不包含任何响应的主体部分,与重定向无关。

  附件条件:if-Match,If-Modified-Since,If-None-Match,If-Range,If-Unmodified-Since.

  

  3.5 307 Temporaty Redirect

       临时重定向,与302类似,但是307不会把post变成get,而且对于处理响应的行为也根据浏览器不同而不同。

4   4XX 客户端错误

  4.1 400 Bad Request

  请求报文错误,请求报文内部语法错误。

  

  4.2 401 Unauthorized

  该状态码表示发送的请求需要经过HTTP认证,若之前已经认证过一次,则表示用户认证失败。返回401的响应必须包含一个适用于被请求资源的www-Authenticate首部用以质询用户信息,但浏览器初次接收到401响应,会弹出认证用的对话窗口。

  

  4.3 403 Forbidden

  该状态码表明对请求资源的访问被服务器拒绝。关于拒绝理由们可以在实体主体部分给出,也可不给。如未获得对文件系统的访问授权,访问权出错。

  4.4 404 Not Found

  服务器上无法找到请求的资源。也可用于服务器拒绝请求且不想说明原因时使用。

5  5XX  服务器错误

       5.1 500 Internal Server Error

       服务器端执行请求发生错误。

  

  5.2 503 Service Unavailable

  该状态码表示服务器暂时处于超负荷或者正在进行停机维护,现在无法处理请求,如果事先得知解除以上状态需要的时间,最好写入RetryAfter首部字段在返回给客户端。

  

  实际应用中,状态码和状况不一定一致,需要谨慎判断。

posted on 2019-06-20 15:52  探路_先锋  阅读(494)  评论(0编辑  收藏  举报
……