Interview AiBoxInterview AiBox 实时 AI 助手,让你自信应答每一场面试
请介绍一下常见的HTTP状态码及其含义。
题型摘要
HTTP状态码是服务器响应HTTP请求时返回的三位数字代码,用于表示请求的处理结果。状态码分为五大类:1xx(信息响应)、2xx(成功响应)、3xx(重定向)、4xx(客户端错误)和5xx(服务器错误)。常见的状态码包括200(成功)、301(永久重定向)、404(未找到)和500(服务器内部错误)等。理解这些状态码对于Web开发和调试至关重要。
HTTP状态码详解
HTTP状态码是服务器响应请求时返回的三位数字代码,用来表示请求的处理结果。状态码分为五大类,每个类别的第一位数字相同,具有相似的含义。
1xx 信息响应(Informational responses)
表示请求已接收,继续处理。
| 状态码 | 名称 | 含义 |
|---|---|---|
| 100 | Continue | 服务器已收到请求的初始部分,客户端应继续发送请求的剩余部分 |
| 101 | Switching Protocols | 服务器理解并同意切换到客户端在请求头中指定的协议 |
| 102 | Processing | 服务器已收到并正在处理请求,但尚无响应可用 |
2xx 成功响应(Successful responses)
表示请求已成功被服务器接收、理解、并接受。
| 状态码 | 名称 | 含义 |
|---|---|---|
| 200 | OK | 请求成功,服务器返回所请求的数据 |
| 201 | Created | 请求成功,并且服务器创建了新的资源 |
| 202 | Accepted | 服务器已接受请求,但尚未处理 |
| 204 | No Content | 服务器成功处理了请求,但没有返回任何内容 |
| 206 | Partial Content | 服务器成功处理了部分GET请求 |
3xx 重定向(Redirection messages)
表示需要客户端采取进一步的操作才能完成请求。
| 状态码 | 名称 | 含义 |
|---|---|---|
| 301 | Moved Permanently | 请求的资源已永久移动到新位置 |
| 302 | Found | 请求的资源临时移动到新位置 |
| 303 | See Other | 对应资源的另一个URI,应使用GET方法获取 |
| 304 | Not Modified | 资源未被修改,可使用缓存的版本 |
| 307 | Temporary Redirect | 请求的资源临时移动到新位置,保持请求方法不变 |
| 308 | Permanent Redirect | 请求的资源永久移动到新位置,保持请求方法不变 |
4xx 客户端错误(Client error responses)
表示客户端似乎出错了,妨碍了服务器的处理。
| 状态码 | 名称 | 含义 |
|---|---|---|
| 400 | Bad Request | 服务器无法理解请求的格式 |
| 401 | Unauthorized | 请求需要用户验证 |
| 403 | Forbidden | 服务器拒绝执行请求 |
| 404 | Not Found | 服务器找不到请求的资源 |
| 405 | Method Not Allowed | 请求方法不被允许 |
| 408 | Request Timeout | 服务器等待请求时超时 |
| 409 | Conflict | 请求与服务器当前状态冲突 |
| 413 | Payload Too Large | 请求实体过大 |
| 414 | URI Too Long | 请求的URI过长 |
| 429 | Too Many Requests | 客户端在给定时间内发送了太多请求 |
5xx 服务器错误(Server error responses)
表示服务器在处理请求的过程中发生了错误。
| 状态码 | 名称 | 含义 |
|---|---|---|
| 500 | Internal Server Error | 服务器内部错误,无法完成请求 |
| 501 | Not Implemented | 服务器不支持请求的功能 |
| 502 | Bad Gateway | 服务器作为网关需要得到一个处理这个请求的响应,但是未得到 |
| 503 | Service Unavailable | 服务器当前无法处理请求 |
| 504 | Gateway Timeout | 服务器作为网关需要得到一个处理这个请求的响应,但是未及时得到 |
| 505 | HTTP Version Not Supported | 服务器不支持请求的HTTP协议版本 |
思维导图
Interview AiBoxInterview AiBox — 面试搭档
不只是准备,更是实时陪练
Interview AiBox 在面试过程中提供实时屏幕提示、AI 模拟面试和智能复盘,让你每一次回答都更有信心。
AI 助读
一键发送到常用 AI
HTTP状态码是服务器响应HTTP请求时返回的三位数字代码,用于表示请求的处理结果。状态码分为五大类:1xx(信息响应)、2xx(成功响应)、3xx(重定向)、4xx(客户端错误)和5xx(服务器错误)。常见的状态码包括200(成功)、301(永久重定向)、404(未找到)和500(服务器内部错误)等。理解这些状态码对于Web开发和调试至关重要。
智能总结
深度解读
考点定位
思路启发
相关题目
请解释TCP三次握手的过程。
TCP三次握手是建立可靠网络连接的关键过程,通过SYN、SYN+ACK和ACK三个数据包的交换,确保客户端和服务端都具备收发能力并同步序列号。第一次握手客户端发送SYN包并进入SYN_SENT状态;第二次握手服务端回复SYN+ACK包并进入SYN_RCVD状态;第三次握手客户端发送ACK包,双方都进入ESTABLISHED状态,连接建立完成。三次握手而非两次或四次的设计是为了在保证可靠性的同时避免不必要的延迟和潜在问题。
TCP和UDP有什么区别?
TCP和UDP是两种核心的传输层协议,主要区别在于:TCP是面向连接的可靠传输协议,通过三次握手建立连接,提供确认重传、流量控制和拥塞控制机制,保证数据不丢失、不重复、按序到达,适用于文件传输、电子邮件等高可靠性场景;UDP是无连接的不可靠传输协议,无需建立连接,直接发送数据报,不保证数据可靠性,但传输速度快、开销小,适用于实时音视频、在线游戏、DNS查询等实时性要求高的场景。选择哪种协议取决于应用对可靠性和实时性的需求权衡。
什么是跨域问题?如何解决前端跨域请求?
跨域问题是浏览器的同源策略导致的,限制了一个域的文档或脚本获取另一个域的资源。常见解决方案包括:JSONP(利用script标签无跨域限制)、CORS(通过HTTP头部控制访问权限)、代理服务器(同源转发)、WebSocket(双向通信协议)、postMessage(跨文档通信)、document.domain(设置相同主域)和window.name(利用窗口名称特性)。选择方案时需考虑兼容性、安全性和场景需求,现代应用首选CORS,实时通信可选WebSocket,无法控制服务器时可考虑代理。
什么是跨域?有哪些解决跨域的方法?
跨域是Web开发中因浏览器同源策略导致的限制,当协议、域名或端口不同时发生。解决跨域的主要方法有:1) CORS(跨域资源共享),通过服务器设置HTTP响应头实现,是最推荐的标准化方案;2) JSONP,利用script标签跨域特性,但仅支持GET请求;3) 代理服务器,通过同源服务器转发请求;4) WebSocket,双向通信协议,不受同源限制;5) postMessage,HTML5 API,用于窗口间安全通信;6) document.domain,适用于子域间通信;7) window.name和location.hash,利用浏览器特性实现但安全性较低。选择方案需考虑安全性、兼容性、通信类型和实现复杂度等因素。
请详细解释HTTPS的工作原理和加密过程。
HTTPS是HTTP的安全版本,通过SSL/TLS协议实现数据加密、身份验证和完整性保护。其工作原理主要分为两个阶段:SSL/TLS握手阶段和数据传输阶段。在握手阶段,客户端和服务器协商加密算法、验证服务器身份并生成会话密钥;在数据传输阶段,使用会话密钥进行对称加密通信。HTTPS结合了对称加密(效率高)和非对称加密(安全密钥交换)的优点,通过数字证书验证服务器身份,防止中间人攻击,并使用哈希函数保证数据完整性。随着网络安全意识的提高,HTTPS已成为网站的标准配置。