这是我参与「第四届青训营 」笔记创作活动的第2天
1.http常见状态码有哪些?
2:http常见的header有哪些?
3:什么是Restful API ?
4:介绍一下http缓存
http 状态码:
-
1XX: 服务器收到请求
-
2XX: 请求成功 | 200 成功
-
3XX: 重定向
-
301 永久重定向 (配合location,浏览器自动处理)
浏览器会记住那个网址返回了301 要去另外哪个location, 那么在下次访问该网站时,就不会去访问它,直接去访问那个location。
- 302 临时重定向 (配合location,浏览器自动处理)
浏览器访问一个地址时返回302,告诉一个location,浏览器会自动的访问那个location。但下次再访问这个地址的时候,浏览器还是会去看访问该地址是不是还会返回302,再根据location访问新的地址。
- 304 资源未改变
代表服务器没有返回新的资源,浏览器就会使用自己缓存的资源,这样性能比较快。
- 4XX: 客户端错误
- 404 资源未找到 | 403 没有权限
- 5XX: 服务器端错误 | 500 服务器错误 | 504 网关超时
考点:GET 和 POST区别
GET:用于获取数据
POST:用于新建数据
- GET会被主动缓存,而POST不会,除非手动设置。
- GET请求参数会以字符串的形式添加在URL 后面,POST请求参数在请求体中。
- GET请求会保留在浏览器历史记录中,POST请求不会保留在浏览器历史记录中
- GET回退时是无害的,POST会再次提交请求。
- GET产生的url可以被收藏为书签, 而POST不可以。
- GET请求有长度限制,POST没有长度限制。
http headers 3种
- 常见的Request Headers
Accept 浏览器可接收的数据格式
Accept-Encoding 浏览器可接收的压哨算法,如gzip.
Accept-Language 浏览器可接收的语言,如zh-CN
Connection: keep-alive 一次TCP连接重复使用
cookie 同域每次请求资源都会带上
- 常见的Response Headers
Content-type 返回数据的格式,如application/json
Content-length 返回数据的大小,多少字节
Content-Encoding 返回数据的压缩算法,如gzip.
Set-Cookie 服务端要向客户端设置Cookie时,通过Set-Cookie设置
- 缓存相关的header
Cache-Control
Expires
Last-Modified
If-Modified-Since
Etag
If-None-Match
什么是Restful API
传统的http methods: Get Post
现在的http methods:
- Get 获取数据
- Post 新建数据
- Patch/Put 更新数据
- Delete 删除数据
Restful API: 一种API设计风格
传统API设计:把每个url当成一个功能.
Restful API设计:把每个url当成一个唯一的资源标识,使用method表示操作类型,不使用url参数。
http缓存
缓存的介绍:
- 什么是缓存?
把一些没有必要重新获取一遍的数据,不再重新获取。
- 为什么需要缓存?
通过缓存减少网络请求的数量和体积,让页面加载速度更快些。
- 哪些资源可以被缓存?
静态资源(JS,CSS, img),一旦上线后就不可能被更改。
像网站的HTML(会被随时更新),网页的业务数据(网页留言表列表,后台的数据库数据随时都会被改变)不能被缓存。