一. 请求消息(request)
客户端发送给服务器端的数据
数据格式 :
- 请求行
请求方式 : 请求url 请求协议/版本
GET /login.html HTTP/1.1
请求方式 :
- HTTP协议中有7种请求方式, 常用的有2中
- GET :
- 请求参数在请求行中, 在url后
- 请求的url长度时有限制的
- 不安全
- POST :
- 请求参数在请求体中
- 请求的url长度没有限制
- 相对安全
- 请求头
请求头名称 : 请求头值
- 常见的请求头 :
- User-Agent : 浏览器告诉服务器, 我访问你使用的浏览器版本信息
- 可以在服务器端获取该头的信息, 解决浏览器的兼容性问题
- Referer : http://localohst/login.html
- 告诉服务器, (当前请求)从哪里来?
- 防盗链
- 统计工作
- 请求空行
用于分割POST请求的请求头和请求体的 - 请求体
封装POST请求消息的请求参数
二. 响应消息(response)
服务器端发送给客户端的数据
数据格式 :
- 响应行
组成 : 协议/版本 响应状态码 状态码描述
响应状态码: 服务器告诉客户端浏览器本次请求和响应的一个状态
- 状态码都是三位数字
- 分类 :
- 1xx : 服务器接收客户端消息, 但没有接收完成, 等待一段时间后, 发送1xx状态码
- 2xx: 成功.
- 3xx: 重定向.
- 4xx: 客户端错误
- 5xx: 服务器端错误
具体状态码请看 : HTTP 响应代码
- 响应头
- 格式 : 头名称 : 值
- 常见的响应头 :
1. Content-Type : 服务器告诉客户端本次响应体数据格式以及编码格式
2. Content-disposition : 服务器告诉客户端以什么格式打开响应体数据
值 :
- in-line : 默认值, 在当前页面内打开
- attachment; filename=xxx : 以附件形式打开响应体 , 文件下载
- 响应空行
- 响应体
- 字符串或二进制数据(传输的数据)