HTTP
这是我参与
「第四届青训营」笔记创作活动的第5天
初识HTTP
简介
HTTP是[HyperText Transfer Protocol]的缩写,意为超文本传输协议,是运用在分布式、协作式和超媒体信息系统上的应用层协议,为了Web服务器与浏览器之间的通信而设计,基于TCP/IP通信协议来传递数据。
工作原理
- 浏览器作为客户端通过URL向Web服务端发送HTTP请求,
- 服务端收到请求后向客户端发送响应信息
注意事项
- HTTP是每次连接只传输一次请求,处理完请求后发送响应信息即刻断开连接,这样能够节省传输时间
- HTTP是独立的,只要客户端和服务端知道如何处理数据内容,任何类型的数据都能通过HTTP发送
- HTTP是无状态的,对事件处理不会携带之前的信息
HTTP协议内容
请求方式
常用方法有:
- GET - POST - PUT - DELETE
所有的请求方式:
-
不会修改服务器数据的方法(Safe):
- GET
- HEAD
- OPTIONS
-
同样的请求执行的效果、服务器状态不受请求次数影响的方法(idempptent):
- GET
- HEAD
- OPTIONS
- PUT
- DELETE
PS:所有Safe方法都是幂等(idempptent)的
状态码
用于表示服务响应状态,根据状态码能得出请求是否成功或者异常错误
REST风格
[Representational state transfer] 表述性状态转移,是一种API设计风格
- 每个URI都代表一种资源
- 客户端和服务端传递这种资源的表现层
- 客户端通过HTTP method对服务端资源进行操作,实现"表现层状态转化"
请求头与响应头
请求头通常都包含用户对资源请求所需要携带的信息
Cookie
是客户端能暂时或永久保存在浏览器中的信息,当访问特定Web站点时能被使用,用于辨别用户身份
通常由一个Name,一个Value和几个控制安全性、有效期等可选属性组成
HTTPS
HTTPS是经过TSL/SSL加密后的HTTP协议,包含有效的证书签名,对于HTTPS站点的访问比较有安全性
HTTPS加密过程