您的位置:首页 > 其它

解刨请求,cookie、Ajax

2020-07-14 05:49 204 查看

建立连接

1、一个基于Tcp/Ip协议标准的三次握手,http协议请求,只能由客户端发起,想建立连接,需要两端都通上,所以检测是双方接收状态
2、请求
(1)Request发送请求:
每个请求都有一个请求报文:‘请求行’,‘请求头’,‘请求空行’,‘请求体’
请求行:GET、请求的URL、HTTP/1.1 ,行的信息
请求头:**content-type:本次请求我给你携带的参数是什么数据格式,cookie也在这, **详细的对本次请求进行的一个描述,从host以下都是了Host:主机名,user-Agent:发起请求的客户端版本,Accept:告诉服务端希望返回类型,Referer:从哪个地址发起的请求,Accept-Encoding:压缩传出,20%左右
请求空行:请求头和请求体之间必须留一个空行
请求体:GET(没有请求体,直接拼在地址栏的后面)POST(有请求体,参数就在请求体的位置)
(2)Reponest响应报文
每一个响应会有一个响应报文:‘状态行’,‘响应头’,‘响应体’
状态行:HTTP/1.2 响应协议版本,200本次请求的状态码
响应头:Data服务器时间, 不过是美国时间,Server由哪一个服务器给你返回的信息,Content-Length响应体长度,Content-Type:服务端返回的数据是什么数据类型,cookie
响应体:就是服务端返回的信息

断开链接:

Tcp/IP协议的四次挥手

GET和POST请求的区别

GET请求:地址栏拼接,会被浏览器自主缓存,会限制浏览器地址栏的存储的大小:IE2kb左右,只能接收ASCII,中文转换
POST请求:不会自动缓存,理论参数不受大小限制(可以被服务器限制,视频之类必须限制),理论上发送各种类型过的数据,要和请求头中的Content-type配套

Cookie:

document.cookie 获取完整的cookie字符串
document.cookie=‘key=value’ +expires=时间对象 设置一条cookie,设置时间是会话

封装一个cookie:算时间太麻烦setCookie(key,value,time){}
截取splice太麻烦了getCookie(key){}
过期时间太麻烦了  delCookie(key){}

浏览器提供一个存储数据的空间,可以使用js控制存储空间,后端也可以
shell:‘a=100;b=200;c=300’
存储位置:按照域名来存储的,你住在哪个域名下存储的,但是有一个参数,可以第三方cookie
存储大小:存储4kb左右,50条左右(ie)
和前后台交互的关系:
当一个请求发起的时候,如果cookie空间中有内容,那么这个请求中会自动在请求头中携带cookie空间中的内容到后台。
当后端返回响应的时候,如果之前的请求报文中有cookie,我还会返回一个一模一样的
后端也可以设置cookie

Ajax

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: