前言
状态码的职责是客户端向服务器端发送请求时,描述返回的请求结果,借助状态码,客户端可以知道服务器端是否正确的处理了请求。
一.状态码组成
状态码由3位数据和原因短语组成
如:200 OK
数组第一位指定响应的类别,后两位无分类,响应类别有以下5种
二.代表性的14个状态码
1.200 OK (成功)
表示客户端发来的请求在服务器端被正常处理了
2.204 No Content (没有实体)
表示服务器已经成功处理了请求,但是返回的报文中没有任何实体的主体
比如:当浏览器发送请求后,返回204,浏览器不刷新内容。一般只需要客户端向服务器端发送信息,而客户端不需要更新内容的情况。
3.206 Partial Content (范围内容)
该状态码表示客户端进行了范围请求,服务器端成功执行了这部分GET 请求,响应报文中包含由Content-Range指定的范围内容。
范围请求是指当客户端对服务器进行内容的部分请求,比如下载一个尺寸稍大的图片,分为两部分请求
4.301 Moved Permanently(永久性重定向)
该状态码表示访问的资源已经被重新分配了新的URI,以后应使用新的URI访问资源。
5.302 Found(临时重定向)
该状态码表示请求的资源被临时分配新的URI,希望用户本次能使用新的URI访问
6.303 See Other(GET请求获取资源)
该状态码表示访问的资源存在另一个URI 上,应使用GET方法定向获取请求资源
303 和302 有相同的功能,但是303 明确表示应采用GET方法获取资源这与302状态码有区别
7.304 Not Modified(没有修改)
该状态码表示发送附带条件请求时,服务端允许请求访问资源,但因发生请求未满足条件的情况后,返回304,可使用客户端为过期的缓存。304状态返回时不包含任何响应的主体部分。
8.307 Moved Permanently(临时重定向)
307与302有着相同的含义临时重定向。
9.400 Bad Request(不良要求)
该状态码表示请求报文中存在语法错误。
10.401 Unauthorized(未经授权)
该状态码表示发送的请求需要有通过HTTP认证的认证信息。
11.403 Forbidden(被禁止)
该状态码表示请求的资源的访问被服务器拒绝了。
12.404 Not Found(无法找到资源)
该状态码表示服务器无法找到请求资源。
13.500 Internal Server Erro(内部服务器错误)
服务器端在执行请求的时候发生了错误,也有可能是存在bug或者临时的故障。
14.503 Serveice Unavailable(服务不可用)
服务器暂时处于超负载状态,或进行停机维护,现在无法请求。