赞
踩
浏览器和服务器之间数据交互的过程
前端:浏览器端
客户端:只要能和服务器通信的就叫客户端(curl https:www.imooc.com)
后端:服务器端
(1)使用浏览器访问网页
在浏览器地址栏输入网址,按下回车即请求
(2)HTML的标签
浏览器在解析HTML标签的时候,遇到一些特殊的标签,会再次向服务器发送请求(link/script/iframe/img)
还有一些标签,浏览器解析的时候,不会向服务器发送请求,但是用户可以使用他们向服务器发送请求(a/form)
(3)Ajax和Fetch
HTTP(HyperText Transfer Protocol)超文本传输协议,HTML、JS、CSS、图片、字体、音频、视频等文件,都是通过HTTP在服务器和浏览器之间传输。
每一次前后端通信,前端需要主动向后端发出请求,后端接收到前端的请求后,可以给出响应。HTTP是一个请求-响应协议。(浏览器和服务器之间遵循的协议)
浏览器向服务器发送请求时,请求本身就是信息,叫请求报文。
服务器向浏览器发送响应时传输的信息,叫响应报文。
1.请求报文
请求行:起始行
请求头:首部
请求体:
GET请求,没有请求体,数据通过请求头携带(通过GET方法,发送的数据会在网址栏中体现出来)
POST请求,有请求体,数据通过请求体携带
2.响应报文
响应头:起始行+首部
响应体
浏览器发送请求时采用的方法,和响应无关
GET(获取数据) POST(创建数据) PUT(更新数据) DELETE(删除数据)
用来定义对于资源采取什么样的操作的,有各自的语义
(1)语义
GET:获取数据
POST:创建数据
(2)发送数据
GET通过地址在请求头中携带数据,能携带的数据量和地址的长度有关系,一般最多就几块
k。
POST既可以通过地址在请求头中携带数据,也可以通过请求体携带数据,能携带的数据量理论上是无限的。
携带少量的数据,可以使用GET请求,大量的数据可以使用POST请求。
(3)缓存
GET可以被缓存(因为GET请求的数据时在地址中,而地址可以被浏览器缓存),POST不会被缓存。
(4)安全性
GET和POST都不安全,发送密码或其他敏感信息时不要使用GET,主要是避免直接被他人窥屏或通过历史记录找到密码。
定义服务器对请求的处理结果,是服务器返回的
(此部分内容参考原文章)
请求头由若干个键值对构成(记录浏览器的一些相关信息)
格式: 名字: 值(冒号后面有空格)
查看请求头具体含义
Host表示该请求对应的服务器的地址。
表示请求体的长度,只有post请求才会有,单位是字节。
表示请求体的格式,只有post请求才会有,取值如下:
表示是浏览器/操作系统的属性,可以用来区分是windows还是android或是ios
表示该页面是从哪个页面跳转过来的,如果直接在网址中输入url则是没有referer的
键值对的形式,所表示的含义,由程序员自定义
通常用来向服务器发送数据,例如表单提交、上传文件等。
常见响应体的内容格式:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。