- 网络模型
- websoket
- 输入url到渲染过程
- 强缓存、协商缓存
- 网络攻击:xss、csrf
- 三次握手、四次挥手
- 状态吗
- https
1、请求方式
- GET:用于请求指定资源
- POST:
- 向指定资源提交数据(例如:表单提交、文件上传)
- 数据被包含在请求体中
- PUT:
- 用于更新资源或创建资源(上传文件)
- PUT 方法是幂等的,调用一次或连续多次调用效果是相同的(类似get请求)
- DELETE:删除指定资源
- HEAD:
- 请求资源的头信息
- 与 GET 类似,但不返回消息体,通常用于测试超链接的有效性
- OPTIONS:
- 用于查询目标资源支持的方法
- 通常用于 CORS 中预检请求、检查服务器允许的 HTTP 方法
- PATCH:
- 用于对目标资源的部分修改
- 是对 PUT 方法的补充,用来更新部分资源的内容
- TARCE:
- 用于回显服务器收到的请求
- 主要用于测试或诊断
- CONNECT:
- 用于客户端要求用隧道协议连接代理
- 主要用于 SSL 加密服务器的中间代理
2、常见状态码
- 2XX:成功
- 200:请求成功
- 204:
响应报文中无实体,一般是 post、put、delete、head 等操作 - 206:
客户端进行了范围请求,响应报问中含 Content-Range
- 3XX:重定向
- 301:
永久重定向,请求的资源被分配了新的 URI - 302:
临时重定向,请求的资源被分配了新的 URI,本次使用新的 URI - 304:在某种条件下,可以直接
使用本地缓存
- 301:
- 4XX:客户端
- 400:请求报文中存在
语法错误 - 401:
用户认证失败 - 403:请求资源被
服务器拒绝 - 404:无法找到对应的资源
- 400:请求报文中存在
- 5XX:服务器端
- 500:服务器端执行时发生的错误
- 503:服务器处于超负荷或维护状态
3、常见 Content-Type (MIME媒体类型)
-
text:文本
text/plain:文本文件默认值
-
application:二进制数据
application/octet-stream:除文本文件外的其它文件默认值application/json:json文件
-
multipart 类型
multipart/form-data:表单的 post 请求
-
数据请求中常用的三种类型
- multipart/form-data:post 提交 form 表单数据
- application/json:post 提交 json 格式的数据
- application/x-www-form-data-urlencoded:get、post 传递 key-value 格式的数据
3、常见头信息
通用字段
Cache-Control
- 作用:控制缓存的行为
- 格式:Cache-control: private, max-age-0, no-cache
- 缓存
请求指令- no-cache:强制向源服务器再次请求,缓存文件、不影响下次走'协商缓存'
- no-store:不缓存请求或响应的任务内容
- max-age:响应的最大 Age 值
- 缓存
响应指令- public:向
任意方提供响应的缓存 - private:仅向
特定用户返回响应 - no-cache:同上
- no-store:同上
- public:向
Transfer-Encoding
- 作用:规定了传输报文主体时采用的编码方式
- 格式:Transfer-Encoding: chunked // 分块传输编码
请求首部字段
Accept
- 作用:通知服务器能够处理的媒体类型
- 格式:Accetp:text/plain;q=0.3, text/html // 发我 html 格式,如没有发 text 也行
Authorization
- 作用:告知服务器,用户的认证信息(token)
- 格式:Authorization: Basic dwVub3NljpwXYzd.....
实体首部字段
Content-Type
- 作用:说明实体主题内对象的媒体类型
- 格式:Content-Type:text/html;charset=UTF-8
Expires
-
作用:资源失效的日期
-
格式:Expires:Web, 04 Jul 2012 08:26:05 GMT