HTTP响应码科普(合集)与解决办法
HTTP响应码合集
1xx(临时响应):信息性状态码
- 100 Continue:客户端应当继续发送请求。
- 101 Switching Protocols:服务器将切换协议;只能在Upgrade首部字段定义的协议间切换。
2xx(成功):成功状态码
- 200 OK:请求已成功处理。
- 201 Created:已创建新资源。
- 202 Accepted:已接受请求,但未完成处理。
- 203 Non-Authoritative Information:返回的信息来自第三方,并且服务器对此不负责。
- 204 No Content:请求已成功处理,但无内容返回。
- 205 Reset Content:请求已成功处理,客户端应重置文档视图。
- 206 Partial Content:服务器成功执行了部分 GET 请求。
3xx(重定向):重定向状态码
- 300 Multiple Choices:多种选择,通常用于提供选择列表。
- 301 Moved Permanently:永久性移动,请求的 URI 已被新的 URI 替代。
- 302 Found:临时性移动,与307 Temporary Redirect类似,但在历史上常用于实现重定向。
- 303 See Other:请求的资源可在不同的 URI 下被找到,客户端应当使用 GET 方法获取资源。
- 304 Not Modified:如果客户端有缓存的文档副本,则可继续使用它。
- 307 Temporary Redirect:临时重定向,请求方法、请求体不会发生变化。
- 308 Permanent Redirect:类似于301,但是强制要求请求方法保持不变。
4xx(客户端错误):客户端错误状态码
- 400 Bad Request:请求语法错误或无法理解。
- 401 Unauthorized:请求未经授权,需要身份验证。
- 402 Payment Required:保留状态码,原意为支付需求,但实际上很少使用。
- 403 Forbidden:服务器理解请求,但拒绝执行。
- 404 Not Found:服务器无法找到请求的资源。
- 405 Method Not Allowed:请求的方法不在允许范围内。
- 406 Not Acceptable:服务器不能提供符合客户端所接受的内容类型。
- 407 Proxy Authentication Required:客户端必须先进行代理身份验证。
- 408 Request Timeout:服务器等待请求时超时。
- 409 Conflict:请求完成存在冲突。
- 410 Gone:请求的资源不再可用,并且也不会再次可用。
- 411 Length Required:服务器拒绝接收没有定义Content-Length头的请求。
- 412 Precondition Failed:请求中的前提条件未得到满足。
- 413 Payload Too Large:请求实体太大。
- 414 URI Too Long:请求URI过长,超过了服务器能够处理的长度。
- 415 Unsupported Media Type:服务器不支持请求中所包含的数据格式。
- 416 Range Not Satisfiable:请求范围不符合任何当前资源的子范围。
- 417 Expectation Failed:服务器未能满足Expect请求头的要求。
- 421 Misdirected Request:请求应该被发送到其他地方,这里无法处理。
- 422 Unprocessable Entity(WebDAV):请求格式正确,但因语义错误而无法处理。
- 423 Locked(WebDAV):资源被锁定。
- 424 Failed Dependency(WebDAV):由于依赖项失败,请求无法完成。
- 426 Upgrade Required:服务器拒绝处理请求,除非升级到一个更高级别的协议。
- 428 Precondition Required:服务器要求该请求应有一个前提条件。
- 429 Too Many Requests:客户端发起的请求数量过多,超出了服务器的处理能力。
- 431 Request Header Fields Too Large:请求头部字段过大。
- 451 Unavailable For Legal Reasons:资源因法律原因不可用。
5xx(服务器错误):服务器错误状态码
- 500 Internal Server Error:服务器遇到了意外情况,无法完成请求。
- 501 Not Implemented:服务器不支持请求的功能。
- 502 Bad Gateway:服务器作为网关或代理时收到了无效响应。
- 503 Service Unavailable:服务器暂时无法处理请求,通常由于过载或维护。
- 504 Gateway Timeout:服务器作为网关或代理时,未能及时从上游服务器收到响应。
- 505 HTTP Version Not Supported:服务器不支持请求使用的HTTP协议版本。
- 506 Variant Also Negotiates:服务器遇到透明内容协商问题。
- 507 Insufficient Storage:服务器无法存储完成请求所需的内容。
- 508 Loop Detected(WebDAV):检测到请求循环。
- 510 Not Extended:服务器不满足客户端在扩展机制中所需的扩展。
- 511 Network Authentication Required:客户端需要通过网络认证才能访问资源。
解决办法
- 400 Bad Request 解决办法:检查并修正客户端请求的语法或参数,确保与服务器端API要求相符。
- 401 Unauthorized 解决办法:确保正确提供身份验证信息(如用户名、密码或访问令牌),如有权限问题则需申请或调整权限。
- 403 Forbidden 解决办法:同上,特别关注权限不足的问题。
- 404 Not Found 解决办法:核实请求URL是否正确,若资源已移动或删除,请更新客户端请求地址。
- 405 Method Not Allowed 解决办法:确认客户端使用的HTTP方法(GET, POST, PUT, DELETE等)与服务器支持的方法匹配。
- 408 Request Timeout 解决办法:优化客户端请求速度和网络连接质量,或延长服务器超时限制。
- 409 Conflict 解决办法:当请求因并发操作导致冲突时,客户端需重新获取最新资源状态并据此调整请求内容。
- 410 Gone 解决办法:资源被永久删除,客户端应移除对已删除资源的引用,并按业务需求寻找替代资源或通知用户。
- 411 Length Required 解决办法:对于需要Content-Length头部的请求,确保发送请求时正确设置了该字段。
- 412 Precondition Failed (未在列表中但通常位于此位置) 解决办法:检查前提条件(如If-Match, If-Unmodified-Since等)是否满足服务器的要求。
- 415 Unsupported Media Type 解决办法:在POST/PUT等请求中,确保请求体数据格式与Content-Type声明的媒体类型一致。
- 416 Range Not Satisfiable (未在列表中但通常位于此位置) 解决办法:检查请求范围是否符合服务器上的可用资源范围。
- 417 Expectation Failed 解决办法:检查和修正Expect头部值,确保服务器支持期望的功能(如100-Continue)。
- 422 Unprocessable Entity (WebDAV) 解决办法:修正请求体内容以满足服务器端的数据验证规则。
- 423 Locked (WebDAV) (未在列表中但通常位于此位置) 解决办法:资源被锁定,根据具体场景解锁资源或稍后再试。
- 425 Too Early (RFC 8470) 解决办法:在HTTP/2或QUIC协议中,避免过早发送请求,等待服务器准备好后再发起请求。
- 426 Upgrade Required 解决办法:按照Upgrade头部指示升级到服务器所需的新协议版本。
- 428 Precondition Required 解决办法:按照服务器指示,在请求中添加适当HTTP头部字段以满足资源操作的前提条件。
- 429 Too Many Requests 解决办法:降低请求频率以符合服务器速率限制策略,必要时可申请更高的请求限额。
- 406 Not Acceptable 解决办法:检查并修改客户端Accept头部以接受更广泛的媒体类型。
- 304 Not Modified 解决办法:允许客户端继续使用缓存资源,并确保HTTP缓存策略设置合理,利用ETag或Last-Modified头部进行条件请求。
- 3xx 系列重定向 解决办法:遵循响应头中的Location字段,自动或手动将请求重定向至新URI。
- 500 Internal Server Error 解决办法:排查服务器日志以定位内部错误并修复。针对特定场景,可能涉及代码错误修复或依赖服务故障排查。
- 501 Not Implemented (未在列表中但通常位于此位置) 解决办法:服务器不支持请求的功能,需要评估是否能实现或替换为其他功能。
- 502 Bad Gateway 解决办法:对于暂时性故障,稍后重试请求;如果是配置或第三方服务问题,则进行相应排查和修复。
- 503 Service Unavailable 解决办法:等待一段时间后再次尝试,或根据情况增加服务器资源,改进服务稳定性。
- 504 Gateway Timeout 解决办法:同上,主要针对网关或代理超时问题。
- 507 Insufficient Storage 解决办法:清理存储空间或扩展云存储容量,释放足够空间完成请求。
- 509 Bandwidth Limit Exceeded 解决办法:联系服务提供商了解带宽限制政策,并考虑升级服务套餐以获得更高的带宽限制。
- 511 Network Authentication Required 解决办法:遵循WWW-Authenticate头部指示,执行网络层身份验证。
- 403 Forbidden - CORS 跨域问题 解决办法:配置正确的CORS策略,允许跨域请求,包括设置Access-Control-Allow-Origin、Access-Control-Allow-Methods等头部。
- 401 Unauthorized - OAuth 或 JWT 解决办法:确保客户端在请求时携带正确的访问令牌(Access Token),若令牌过期则重新获取。
- 502 Bad Gateway - 后端服务故障 解决办法:检查并恢复后端依赖服务的状态,例如数据库、缓存、消息队列等。
- 503 Service Unavailable - 高并发场景 解决办法:优化负载均衡策略,增加服务器资源,实施限流和熔断机制以保持服务稳定。
- 451 Unavailable For Legal Reasons 解决办法:遇到法律原因导致资源不可用时,客户端可根据情况通知用户并提供合法替代方案。
- 450 Blocked by Windows Parental Controls (非标准) 解决办法:调整Windows家长控制设置以允许访问所需的网络资源。
- 495 SSL Certificate Error (非标准) 解决办法:确保客户端具有有效的SSL证书并配置正确信任链,或联系服务提供商解决服务器端SSL证书问题。
- 496 SSL Certificate Required (非标准) 解决办法:为客户端配置合适的客户端证书,并在请求时附带提供。
- 497 HTTP Request Sent to HTTPS Port (非标准) 解决办法:确保客户端向正确的协议端口发送请求,即HTTP请求发往HTTP端口,HTTPS请求发往HTTPS端口。
- 520 Unknown Error (Cloudflare) (非标准) 解决办法:排查可能的原因,包括但不限于服务器配置、DNS问题、网络连接问题,并与Cloudflare支持团队合作解决问题。
阅读剩余
本文最后更新于
2024-03-5
部分内容具有时效性,如有失效,请留言
THE END