http 状态码分类
1xx 服务器收到请求
2xx 请求成功 如200
3xx 重定向 如302
4xx 客户端错误 如404
5xx 服务端错误 如 500
http常见状态码
200 成功
301 永久重定向(配合location, 浏览器自动处理,浏览器会记住不会再去访问该域名而是配合location直接到另外一个地址去
302 临时重定向 下去访问还是回去访问老的地址
304 资源未被修改
403 没有权限
404 资源未找到
500 服务器错误
504 网关超时
传统的methods
get(获取数据) 、post(提交数据)
现在的methods
get、post(新建数据)、patch/put(更新数据)、delete 删除数据
什么是restfulAPI
接口设计风格,
传统的API设计: 每个url当作一个功能 /api/list?pageIndex=2
restFul API设计: 把每个url 当作一个唯一的资源 /api/list/2,
如何设计成一个资源
不适用url参数
用method表示操作类型
http headers
Request Headers
Accept 浏览器可姐搜的数据格式
Accept-Encoding: 浏览器可接收的压缩算法 gzip
Accpt-Languange: zh-cn
Connection: keep-alive一次TCP连接重复使用
cookie
HOst
User-Agent(UA)浏览器信息
content-type 发送数据格式, 如application/json
Response Headers
content-type 返回数据格式, 如application/json
content-length 数据大小
content-Encoding :gip
Set-Cookie
http 缓存
资源加载是比较慢的,尽量减少网络请求的体积和数量,网咯请求的不稳定性
静态资源
强制缓存
cache-control:
max-age no-cache no-store(不缓存也不用服务端处理就直接把资源重新给我返回一次) private public
expires 已被cache-control 代替
http缓存 - 协商缓存
服务端缓存策略:服务端判断这个资源能不能用缓存的内容,如果可以就不反回新的资源
服务端判断客户端资源,是否和服务端的一样
一致返回304,
资源标识
在Response Headers中,有两种
Last-Modified 资源最后修改的时间
Etag资源的唯一标识