HTTP状态码是HTTP协议用来表示客户端HTTP请求状态的三位数字代码。常见的HTTP状态码有以下几种:
1xx(信息性状态码):表示服务器已经接受了请求,正在处理中,通常是在等待继续请求或者发起新的请求。
- 100 Continue:客户端应该继续发送请求。
- 101 Switching Protocols:服务器已经理解请求,正在切换协议。
2xx(成功状态码):表示请求已成功处理并返回结果。
- 200 OK:请求成功,请求的资源已经在响应中返回。
- 201 Created:请求成功并且服务器创建了新的资源。
- 202 Accepted:服务器已接受请求,但尚未处理。
- 204 No Content:请求成功,但响应报文不含实体的主体部分。
3xx(重定向状态码):表示客户端需要执行某些特定的操作才能完成请求。
- 301 Moved Permanently:永久性重定向,请求的资源已经被永久性转移。
- 302 Found:临时性重定向,请求的资源暂时性转移。
- 304 Not Modified:客户端发送条件式请求时,服务器端资源未修改,可以直接使用客户端未过期的缓存。
4xx(客户端错误状态码):表示客户端的请求有误。
- 400 Bad Request:请求无效,服务器端无法理解该请求。
- 401 Unauthorized:请求要求身份验证,客户端未提供有效的身份验证信息。
- 403 Forbidden:服务器拒绝请求,权限不足。
- 404 Not Found:请求的资源不存在。
5xx(服务器错误状态码):表示服务器端处理请求时发生了错误。
- 500 Internal Server Error:服务器内部错误,无法完成请求。
- 503 Service Unavailable:服务器正在处理请求,暂时无法完成请求。
面试时,应该对HTTP协议中的常见状态码有一定的了解,对不同状态码的含义和使用场景有所了解,并举例说明HTTP状态码在Web开发中的应用场景。