HTTP:超文本传输协议(约定,规定),协议详细的规定了浏览器和万维网服务器之间的互相通信规则
组成:
- 请求报文
请求步骤:
1.DNS解析:1.根据域名解析对应远程服务器的IP地址2.TCP连接(三次握手)
建立TCP连接
然后发起HTTP请求
2.服务端接收HTTP请求
进行处理
返回数据
3.客户端接收返回数据
处理数据(渲染页面) - 响应报文
状态码: - 200:请求成功
- 202:服务器已经接收到请求数据,但尚未进行处理
- 301:永久移动
- 302:临时移动
- 304:所请求的资源未修改
- 400:客户端请求的语法错误
- 404:请求的资源不存在
- 500:服务器内部错误
1.get和post区别?
post和get是HTTP的两种请求方法
应用场景:
- get:幂等请求,对服务器资源不会产生影响的情景
- post:不是幂等请求,对服务器资源会产生影响的情景注册用户
报文格式:
- get:报文的请求体为空
- post:报文的请求体不为空,存放着向服务器发送的请求
注意:
get请求:也可以请求的参数放在URL中向服务器发送,但这样的做法相对于post请求来说,一个请求的URL会保留在历史记录中,但浏览器URL是有着长度上的限制,所以会影响请求的长度,而post的参数可以传递支持更多的类型数据
2.浏览器在一次 HTTP 请求中,需要传输一个 4097 字节的文本数据给服务端,可以采用那些方式?
IndexdDB 是 HTML5 的本地存储,把一些数据存储到浏览器(客户端)中,当与网络断开时,可以从浏览器中读取数据,用来做一些离线应用。
Cookie 通过在客户端 ( 浏览器 ) 记录信息确定用户身份,最大为 4 kb 。
url 参数用的是 get 方法,从服务器上获取数据,大小不能大于 2 kb 。
Session 是服务器端使用的一种记录客户端状态的机制 。
post 是向服务器传送数据,数据量较大。
local Storage 也是 HTML5 的本地存储,将数据保存在客户端中(一般是永久的)。