在Web开发中,服务器状态码是表示服务器响应状态的一种方式。它们通常由HTTP协议定义,并用于告知客户端请求的处理结果。以下是常见的服务器状态码及其含义:
一、服务器1开头的状态码
100 Continue
表示客户端请求已经收到,继续发送请求。
101 Switching Protocols
表示服务器将停止使用HTTP协议,并切换到其他协议。
102 Processing
表示服务器已经收到了客户端的请求,正在进行处理。
103 Checking For Action
表示服务器正在进行某种检查,例如重定向或验证等。
104 Continue(支付网关返回的状态码)
表示支付网关已经收到了客户端的请求,并准备继续处理。
105 Continue(WebDAV 返回的状态码)
表示服务器已经成功处理了客户端请求,并准备继续处理其他请求。
106 Continue(IMCP 返回的状态码)
表示IMCP协议的服务器已经收到了客户端的请求,并准备继续处理。
107 Continue(WebDAV 返回的状态码)
表示服务器已经成功处理了客户端请求,并准备继续处理其他请求。
108 Continue(HTTP 返回的状态码)
表示服务器已经收到了客户端的请求,并准备继续处理。
二、服务器2开头的状态码
200 OK
这是最常用的状态码,表示请求成功,客户端收到了服务器的响应。在HTTP协议中,任何请求只要成功,都会返回200状态码。
201 Created
这个状态码表示请求已经成功,并且服务器已经创建了一个新的资源。例如,当客户端向服务器发送一个POST请求创建一个新的博客文章时,服务器就会返回201状态码。
202 Accepted
这个状态码表示请求已经成功,但是服务器还没有处理完毕。它通常用于异步操作,例如发送一个电子邮件通知。客户端可以等待一段时间再次查询处理结果,或者通过其他方式查询处理结果。
203 Non-Authoritative Information
这个状态码表示服务器已经成功处理了请求,但是返回的信息不是由源服务器提供的。它通常用于代理服务器或缓存服务器。
204 No Content
这个状态码表示服务器已经成功处理了请求,但是没有任何响应体需要返回给客户端。它通常用于HEAD请求或DELETE请求等不需要返回响应体的请求。
205 Reset Content
这个状态码表示服务器已经成功处理了请求,但是客户端需要重新加载页面或者刷新页面才能看到结果。它通常用于POST请求之后的响应。
三、服务器3开头的状态码
300 Multiple Choices
该状态码表示客户端的请求包含多个选项,服务器已经选择了一个选项,并将该选项的地址发送给客户端,让客户端自行选择。
301 Moved Permanently
该状态码表示服务器的请求已经永久地移动到了新的位置。服务器会将新的地址发送给客户端,以后客户端的请求需要发送到新的地址。
302 Found
该状态码表示服务器的请求已经临时移动到了新的位置。与301状态码不同的是,服务器只是暂时将请求移动到新的位置,以后客户端的请求仍然需要发送到原始的位置。
303 See Other
该状态码表示服务器的请求已经得到了处理,但需要使用另一个URI来获取结果。服务器会将另一个URI发送给客户端,以后客户端的请求需要发送到这个URI来获取结果。
304 Not Modified
该状态码表示客户端的请求已经得到了处理,但服务器并没有修改任何数据。这是因为在客户端的请求中包含了有效的条件(如If-None-Match或If-Modified-Since),服务器根据这些条件判断出数据没有修改,因此返回304状态码。
305 Use Proxy
该状态码表示客户端的请求需要经过代理服务器来处理。服务器会将代理服务器的地址发送给客户端,让客户端将请求发送到代理服务器。
四、服务器4开头的状态码
400 Bad Request
400状态码表示客户端发送的请求有语法错误或者请求无法被服务器理解。这可能是由于请求头、请求体或者请求参数中存在错误或者不合法的内容所导致的。当出现400错误时,客户端应该仔细检查请求的语法和参数是否正确,修正错误后再次发送请求。
401 Unauthorized
401状态码表示客户端发送的请求需要身份验证,但是未提供正确的身份验证信息或者身份验证失败。这通常发生在需要登录的网站或API接口上,当客户端未提供正确的登录凭证或者提供的凭证无效时,服务器就会返回401错误。客户端应该在发送请求前检查是否已经提供了正确的身份验证信息,或者重新获取有效的凭证后再进行请求。
403 Forbidden
403状态码表示客户端发送的请求被服务器拒绝,因为请求者没有权限访问请求的资源。这可能是因为客户端发送的请求不符合服务器的访问控制规则或者请求的资源被设置为禁止访问。当出现403错误时,客户端应该仔细检查请求的权限和访问控制规则,确保有足够的权限访问请求的资源。
404 Not Found
404状态码表示客户端发送的请求找不到请求的资源。这可能是因为请求的URL不存在或者URL路径错误,或者请求的资源已经被删除或移动到了其他位置。当出现404错误时,客户端应该仔细检查请求的URL是否正确,或者确认所请求的资源是否真的存在。
405 Method Not Allowed
405状态码表示客户端发送的请求方法不被服务器所允许。这可能是因为客户端使用了错误的HTTP方法(如GET、POST、PUT、DELETE等)来访问某个资源,或者服务器端不支持客户端所使用的HTTP方法。当出现405错误时,客户端应该仔细检查请求的HTTP方法是否正确,或者确认服务器是否支持所使用的HTTP方法。
406 Not Acceptable
406状态码表示客户端发送的请求不被服务器所接受。这可能是因为客户端发送的请求参数不符合服务器的规定或者服务器无法处理该请求。当出现406错误时,客户端应该仔细检查请求的参数是否正确,或者确认服务器是否能够处理该请求。
415 Unsupported Media Type
415状态码表示客户端发送的请求数据格式不正确或者不支持所发送的数据格式。这可能是因为客户端发送的数据格式与服务器的预期不符,或者所发送的数据格式不被服务器支持。当出现415错误时,客户端应该仔细检查发送的数据格式是否正确,或者确认服务器是否支持所发送的数据格式。
429 Too Many Requests
429状态码表示客户端发送的请求过于频繁,超过了服务器的限制。这可能是由于客户端在短时间内发送了大量的请求,导致服务器认为该客户端是机器人或恶意攻击者。当出现429错误时,客户端应该仔细检查自己的请求频率和行为是否合法,确保不要超过服务器的限制。
五、服务器5开头的状态码
500 Internal Server Error
这是最通用的服务器错误,表示服务器遇到了一个预料之外的情况,无法完成请求。这是一个非常普遍的错误,通常在服务器端出现问题时出现,例如代码错误、服务器配置问题等。
501 Not Implemented
这个错误表示服务器不支持请求中的某项功能。它通常在请求使用了服务器不支持的HTTP方法或头字段时出现。
502 Bad Gateway
这个错误表示服务器作为网关或代理,从所尝试访问的网页的上游服务器收到无效的响应。它通常在上游服务器(例如负载均衡器、代理服务器等)出现问题时出现。
503 Service Unavailable
这个错误表示服务器当前无法处理请求,例如,它可能正在进行维护或超载。这个错误可以用于应对突然的流量峰值,保护服务器不被过载压垮。
504 Gateway Timeout
这个错误表示服务器作为网关或代理,在尝试从上游服务器获取响应时超时。它通常在上游服务器响应过慢或无响应时出现。
505 HTTP Version Not Supported
这个错误表示服务器不支持请求中的HTTP版本。它通常在请求使用了服务器不支持的HTTP版本时出现。
这些状态码都是在HTTP协议中用来表示服务器响应的状态和结果,帮助我们更好地理解和处理网络请求中的错误和异常情况。在实际开发中,我们应该仔细检查返回的状态码,并根据状态码的含义来处理相应的错误和异常情况。
评论前必须登录!
注册