常见HTTP错误码的类型

一、简介

HTTP错误码是指在进行HTTP通信时,服务器返回的用于表示请求状态的数字代码。HTTP错误码主要分为以下几类

二、分类

(1)1xx(信息性状态码):表示请求已被接收,继续处理。

100 Continue:服务器已接收到请求的初始部分,请继续发送剩余部分。
101 Switching Protocols:服务器要求客户端切换协议。

(2)2xx(成功状态码):表示请求已成功被服务器接收、理解和处理。

200 OK:请求成功。
201 Created:请求已经被实现,新的资源已经依据请求的需要而建立。
204 No Content:服务器成功处理了请求,但没有返回任何内容。

(3)3xx(重定向状态码):表示需要进一步操作以完成请求。

301 Moved Permanently:请求的资源已被永久移动到新位置。
302 Found:请求的资源临时从不同的URI响应请求。
304 Not Modified:资源未修改,可以使用缓存的版本。

 (4)4xx(客户端错误状态码):表示客户端发送的请求有错误。

<1> 400 Bad Request:请求无效,服务器无法理解。

400错误是指客户端发送的请求有语法错误或无效参数,导致服务器无法理解和处理该请求。这个错误状态码属于HTTP协议定义的一部分,表示客户端请求错误。

(扩展)

常见的引起400错误的情况包括:

参数错误:请求中的某些参数格式不正确、缺失或超出了允许的范围。
请求体错误:POST或PUT请求中,请求体的格式不正确或无法解析。
URL错误:请求的URL路径错误或无法识别。
缺少必要的请求头:某些请求需要特定的请求头,如果缺少则会导致400错误。
安全限制:某些安全策略可能会导致400错误,例如请求的内容被防火墙或安全过滤器拦截。
当遇到400错误时,可以尝试以下解决方法:

检查请求参数:确保请求中的参数格式正确、完整,并且符合服务器的要求。
检查请求体:如果是POST或PUT请求,确保请求体的格式正确,并且能够被服务器正确解析。
检查URL路径:确认请求的URL路径是否正确,包括路径名、查询参数等。
添加必要的请求头:根据服务器的要求,添加必要的请求头信息。
检查安全限制:如果有安全策略或防火墙等限制,确保请求符合相应的规定。

(*假设前台传递一个时间格式的字符串,后台数据接收是一个日期类型,如果我们自己不做任何处理直接传递的话,会报什么错(400)
)

<2>401 Unauthorized:请求要求身份验证。

<3>404 Not Found:服务器找不到请求的资源。

<4>405 Method Not Allowed: 方法不被允许


HTTP状态码405表示"方法不被允许"(Method Not Allowed)。它是一种常见的HTTP错误响应代码,用于指示服务器不支持客户端请求所使用的HTTP方法。

客户端发送的请求方法正确,但是目标URL并不支持该方法。例如,服务器上的某个资源只允许GET请求,而客户端发送了一个DELETE请求。
客户端尝试使用不被服务器支持的HTTP方法。例如,服务器只允许GET和POST方法,而客户端发送了一个PUT请求。

        (扩展)

405: Request method 'POST' not supported。

当前请求的请求地址满足请求映射的value属性,但是请求方式不满足method属性
 

(5)5xx(服务器错误状态码):表示服务器在处理请求时发生了错误。

500 Internal Server Error:服务器遇到了一个未曾预料的状况,导致无法完成对请求的处理。

大部分情况下500都是自己编写的源码出错,需要注意;

只要报500,就在控制台找Caused by


503 Service Unavailable:服务器暂时处于超负载或正在进行停机维护,无法处理请求。

503通俗的来讲就是项目没有启动起来

503场景一:Controller层中的方法注解  @RequestMapping("/exp2.do")  重名 会导致项目起不来 括号中的.do也不能忽略


你可能感兴趣的:(http,网络协议,网络)