HTTP1.1
HTTP基础知识
HTTP(HyperText Transfer Protocol)是用于传输超文本 的应用层协议,采用客户端-服务器 模型。
客户端(如浏览器)发起请求,服务器响应并返回数据。
工作原理
客户端发送HTTP请求至服务器,请求包含方法(如GET、POST)、资源路径、HTTP版本及可选头信息。
服务器处理请求后返回响应,包含状态码、头信息和响应体。
数据格式
请求报文
响应报文
http 长连接 短连接的问题
http 应用层协议
tcp 传输层协议
IP 网络层协议
常见HTTP方法
- GET:请求指定资源,仅用于数据读取。
- POST:提交数据到服务器(如表单提交)。
- PUT:替换目标资源的所有当前表示。
- DELETE:删除指定资源。
- HEAD:与GET类似,仅返回头信息。
- OPTIONS:询问服务器支持的请求方法。
- TRACE:回显服务器收到的请求(用于调试)。
HTTP状态码分类
- 1xx(信息性):请求已接收,继续处理。
- 2xx(成功):如200(OK)、201(Created)。
- 3xx(重定向):如301(永久移动)、302(临时重定向)。
- 4xx(客户端错误):如404(未找到)、403(禁止访问)。
- 5xx(服务器错误):如500(内部错误)、503(服务不可用)。
HTTPS安全性
HTTPS(HTTP Secure)通过SSL/TLS加密数据,提供:
- 数据完整性:防止传输中被篡改。
- 保密性:加密通信内容。
- 身份验证:验证服务器身份,防止中间人攻击。
HTTPS工作流程:
- 客户端发起HTTPS请求。
- 服务器返回含公钥的SSL证书。
- 客户端验证证书并生成加密会话密钥。
- 双方使用会话密钥加密通信。
关键对比
- HTTP:明文传输,无加密,默认端口80。
- HTTPS:加密传输,默认端口443,需CA签发证书。