状态码的职责是当前客户端向服务端发送请求时,描述返回的请求结果,借助状态码,用户可以知道服务端是正常处理请求还是出现了错误。
4.1 状态码告知从服务端返回的请求结果
1xx 信息性状态码 收到的请求正在处理
2xx 成功状态码 请求正常处理完毕
3xx 重定向状态码 需要进行附加操作以完成请求
4xx 客户端错误状态码 服务端无法处理请求
5xx 服务器错误状态码 服务器处理请求出错
4.2 常见状态码
1, 2xx
204 该状态码表示服务器接受的请求已经成功处理,但在返回的响应报文中不包含实体的主体部分,比如用get方法获取首部信息
206 206 表示客户端进行了范围请求,而服务端成功执行了这部分get请求,
4.3 3xx重定向响应结果表明浏览器需要执行某些特殊的处理以正确的请求
301 moved permanently 永久重定向,表示请求的资源已经分配了新的uri ,以后应使用资源现在所指的uri
302 临时重定向 该状态码表示请求已被分配新的uri ,希望用户本次使用新的uri访问
303 303 see other 由于请求对应的资源存在着另一个uri,应使用get方法定向获取请求的资源,(302和303类似,但是303指定了对应的方法必须用get获取)
304 表示客户端发送请求时,服务端允许请求访问资源,但未满足条件,304返回时,响应部分不包含主体部分
4.3 307 临时重定向和302类似,
4.4 4xx 客户端错误 4xx响应结果表明客户端是发生错误的原因
400 400 bad request 表示请求报文中有语法错误
401 401 unauthorized 用户认证
403 403 forbidden 请求资源的访问被服务器拒绝
404 not found 表示无法找到请求的资源
4.5 5xx服务器错误 表明服务器本身发生错误
500 Internel server error 服务端再处理请求时候发生了错误
503 503 service unavailable 服务器处于超负载或者停机维护