HTTP 报文
请求和响应报文的基本结构都是起始行,首部字段,主体。
请求报文
<method> <request-URL> <version> <headers> <entity-body>
响应报文
<version> <status> <reason-phrase> <headers> <entity-body>
HTTP 方法
- get
- post
- head
- delete
- put
- opitions
HTTP 状态码
- 1xx——信息性状态码
- 2xx——成功状态码
- 3xx——重定向状态码
- 4xx——客户端错误状态码
- 5xx——服务器错误状态码
更为详细的可以去这个网站看看: HTTP Status Codes
HTTP 首部
- 通用首部
- 请求首部
- 响应首部
- 实体首部
- 扩展首部
识别
因为 HTTP 是一个无状态的协议,协议本身并不保存之前一切请求或响应报文的信息,所以需要额外的手段来进行用户识别,方法有:
- 用户登录
- cookie(会话 cookie 和持久 cookie)
HTTP 认证
- 基本认证:将(用户:密码) base64 处理以后放在 Authorization 的头部中发送到服务器;
- 摘要认证:绝不通过网络发送密码,而是发送密码的摘要;
HTTPS
HTTPS 在 HTTP 下面提供了一个传输级的密码安全层(SSL/TLS)。
好处有:
- 服务器认证(客户端知道它们是在与真正的而不是伪造的服务器通话)。
- 客户端认证(服务器知道它们是在与真正的而不是伪造的客户端通话)。
- 完整性(客户端和服务器的数据不会被修改)。
- 加密(客户端和服务器的对话是私密的,无需担心被窃听)。