当前位置:首页 > 行业动态 > 正文

HTTP消息

HTTP消息分请求与响应,含方法/URL、状态码、头字段及主体,用于客户端与

HTTP消息

HTTP消息是客户端与服务器之间通信的数据载体,分为请求消息(客户端发送)和响应消息(服务器返回),两者均遵循类似的格式,但内容和用途不同。

HTTP消息  第1张


HTTP请求消息结构

部分 内容说明
起始行 方法 路径 协议版本(如:GET /index.html HTTP/1.1
请求头 键值对形式,包含HostUser-AgentContent-Type
空行 分隔头部和消息主体(按标准需换行)
消息主体 可选部分,如POST提交的表单数据或文件内容(GET请求通常无主体)

HTTP响应消息结构

部分 内容说明
起始行 协议版本 状态码 原因短语(如:HTTP/1.1 200 OK
响应头 键值对形式,包含Content-TypeContent-LengthSet-Cookie
空行 分隔头部和消息主体(按标准需换行)
消息主体 返回给客户端的内容(如HTML页面、JSON数据等)

请求与响应对比示例

请求示例(GET)

GET /images/logo.png HTTP/1.1  
Host: www.example.com  
User-Agent: Mozilla/5.0  
Accept: image/png 

响应示例(200 OK)

HTTP/1.1 200 OK  
Date: Wed, 18 Oct 2023 08:30:00 GMT  
Server: Apache/2.4.52  
Content-Type: image/png  
Content-Length: 12345  
Connection: keep-alive  
[二进制图像数据] 

特性 请求消息 响应消息
方法+路径+版本 版本+状态码+短语
常见头部字段 HostRefererCookie Content-TypeSet-Cookie
是否有消息主体 仅POST/PUT等方法有 取决于返回内容(如HTML、JSON)

常见问题与解答

问题1:HTTP请求中的Content-Type和响应中的Content-Type作用是什么?

解答

  • 请求头Content-Type:告知服务器客户端发送的主体数据格式(如application/jsonmultipart/form-data)。
  • 响应头Content-Type:告知客户端服务器返回的数据格式(如text/htmlapplication/pdf),帮助客户端正确解析内容。

问题2:状态码301302有什么区别?

解答

  • 301 Moved Permanently:表示资源永久迁移到新URL,客户端(如浏览器)会更新缓存,后续直接访问新地址。
  • 302 Found:表示临时重定向,客户端仍使用原URL,仅本次请求跳转到新地址。
    示例:网站更换域名时用301,而未登录用户访问需跳转到登录页时用3
0