http请求之响应状态码

我们知道http响应报文的首部字段中,第一行就显示的是http响应的状态码等信息。

那http响应状态码有多少类别呢?

我们比较熟悉的有200(请求成功),502(服务器错误),404(文件找不到),304(资源重定向)等。下面详细介绍一下这些http响应状态码

类别说明
1XXInformational(信息性状态码)接收的请求正在处理
2XXSuccess(成功状态码)请求正常处理完毕
3XXRedirection(重定向状态码)需要进行附加操作以完成请求
4XXClient Error(客户端错误状态码)服务器无法处理请求
5XXServer Error(服务器错误状态码)服务器处理请求出错

状态的类别主要分成上表中的5中类型,http状态码种类繁多,实际上经常使 用的大概只有 14 种。接下来,我们就介绍一下这些具有代表性的状态码。

状态码类别说明
200OK客户端发来的请求在服务器端被正常处理,并返回相应的请求值
204No Content该状态码代表服务器接收的请求已成功处理,但在返回的响应报文 中不含实体的主体部分。
206Partial Content该状态码表示客户端进行了范围请求,而服务器成功执行了这部分 的 GET 请求。响应报文中包含由 Content-Range 指定范围的实体内容。
300 请求成功,但结果有多种选择
301Moved Permanently永久性重定向。该状态码表示请求的资源已被分配了新的 URI,以 后应使用资源现在所指的 URI。
302Found临时性重定向。该状态码表示请求的资源已被分配了新的 URI,希 望用户(本次)能使用新的 URI 访问。
303See Other该状态码表示由于请求对应的资源存在着另一个 URI,应使用 GET 方法定向获取请求的资源
304Not Modified该状态码表示客户端发送附带条件的请求 A 时,服务器端允许请求 访问资源,但未满足条件的情况
307Temporary Redirect临时重定向。
400Bad Request该状态码表示请求报文中存在语法错误。
401Unauthorized该状态码表示发送的请求需要有通过 HTTP 认证(BASIC 认证、 DIGEST 认证)的认证信息。另外若之前已进行过 1 次请求,则表示用 户认证失败。
403Forbidden该状态码表明对请求资源的访问被服务器拒绝了。
404Not Found该状态码表明服务器上无法找到请求的资源
500Internal Server Error该状态码表明服务器端在执行请求时发生了错误。
503Service Unavailable该状态码表明服务器暂时处于超负载或正在进行停机维护,现在无 法处理请求。

除了上面常用的状态码之外,我们还可以自定义一些响应状态码。正确运用返回值的状态码,能够给我们客户端对结果的操作带来很大益处。

相关推荐