概念:浏览器端向后端服务器请求数据,服务端将请求数据解析后响应返回到浏览器端。
1.通信方式:
1)浏览器输入网页
2)html标签 link,img,script,iframe,a,form等
多线程并行
3)ajax和fetch
2.http协议(hypertext transfer protocol):超文本传输协议,是一个请求-响应协议
浏览器发出htrp请求,优先询问自身缓存,过去是否访问该网址,有则直接访问无则向服务器发送请求,同时会检验缓存是否过期,找到后会向服务器发送请求询问本地缓存是否过期,未过期则访问缓存,缓存过期则重新向着服务器发送请求。浏览器发送请求先询问服务器ip地址,服务器地址称为ip地址 查询ip地址优先在浏览器查询自己是否拥有,若有则访问自身ip缓存,这就是为什么第二次以及以后登录该网站速度更快,若没有去DNS域名解析服务器,寻找对应ip,再向服务器发送请求。其中TCP为传输通路,包含http请求和http响应。
3.http报文:
报文是htrp请求信息,http请求称为请求报文,响应报文。
上图为报文的格式
请求头发送url,请求体发送数据
get请求数据存放在请求头,没有请求体,格式为Get/url/浏览器版本
post请求数据在请求体
4.http方法:get(获取数据)查,post(创建数据)增,put改(更改数据),delete删(删除数据)
RSTful接口设计:getuser,postuser,modifyuser,deleteuser等采用集成化方法满足前后端交流的接口设计风格f。
get与post区别:
1)get通过请求头携带数据,受到受到地址长度限制,一般携带几k数据,
post可在请求头和请求体星中携带数据,理论可携带无数数据,
2)get可以被缓存,post不可以,因为get一般保存在地址中,网页地址会被跟随缓存
3)post相对而言安全性比get更高
5.状态码(stutas)
概念:服务器对于请求的处理结果,由服务器端发送
100-199:代码已被接收处理
200-299:处理成功
300-399:重新定向(301永久,302临时性,304缓存)
400-499:请求错误
500-599:服务区错误