HTTP 状态码详解:从 1xx 到 5xx 全面覆盖

常见开源库的二次开发】HTTP之libcurl库——libcurl使用(二)-阿里云开发者社区

HTTP 状态码是调用 HTTP 协议连接时,服务器回应给客户端的统一表示。它不仅可用于标示请求成功与否,还能提供更多服务器回应信息。本文将分类详解 HTTP 状态码,包括不同大类别下的其举和应用场景。

1xx :信息响应状态码

1xx 状态码表示举中状态,用户端需要继续操作。

100 Continue

客户端可以继续发送请求。通常在大举请求之前,客户端会先发送请求头,以确保服务器识别。

101 Switching Protocols

服务器同意客户端的协议切换请求。通常用于 WebSocket 之类情况。

102 Processing (扩展)

举中,表示请求正在处理,但不确实结果。通常用于 WebDAV。

2xx :成功响应状态码

2xx 状态码表示请求成功并回应客户端所需的数据。

200 OK

标示请求成功并返回所需数据。通常用于列表、查询和上传。

201 Created

表示请求完成并创建了新资源。通常用于 POST 请求。

202 Accepted

请求已被接受,但尚未处理完成。通常用于长时间操作。

204 No Content

表示请求成功,但未返回任何数据。通常用于删除。

206 Partial Content

用于协议中的类都举。表示被分块解析。

3xx :重定向响应状态码

3xx 状态码表示客户端需要做一些操作以完成请求。

301 Moved Permanently

表示资源的 URL 已经永久更改,客户端需重新定向。

302 Found

资源暂时移动,请使用新 URL 进行访问。

304 Not Modified

客户端的缓存有效,可继续使用。

4xx :客户端错误状态码

4xx 状态码表示客户端出现错误,需要客户端取消或修改请求。

400 Bad Request

请求有误,服务器无法处理。

401 Unauthorized

需要验证身份。

403 Forbidden

服务器拒绝处理,虽然客户端具备所需权限。

404 Not Found

资源不存在,或服务器无法认识。

405 Method Not Allowed

请求方法不允许。

429 Too Many Requests

用户请求过多,需要限制。

5xx :服务器错误状态码

5xx 状态码表示服务器出现问题,无法处理请求。

500 Internal Server Error

服务器内部错误,无法认别错误。

502 Bad Gateway

代理服务器接收到不正确的响应。

503 Service Unavailable

服务无法用,通常因资源被占用。

504 Gateway Timeout

代理服务器与目标服务器连接超时。

总结

HTTP 状态码为网络通信提供了重要信息,后端和前端都需要严格解析以确保通信无误。在实际应用中,正确使用状态码将大大提高服务性能和用户体验。

阅读剩余
THE END